US20110007733A1 - Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones - Google Patents
Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones Download PDFInfo
- Publication number
- US20110007733A1 US20110007733A1 US12/840,276 US84027610A US2011007733A1 US 20110007733 A1 US20110007733 A1 US 20110007733A1 US 84027610 A US84027610 A US 84027610A US 2011007733 A1 US2011007733 A1 US 2011007733A1
- Authority
- US
- United States
- Prior art keywords
- telephony device
- packet network
- computer
- readable medium
- network address
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 342
- 238000013480 data collection Methods 0.000 title description 9
- 230000008093 supporting effect Effects 0.000 title description 8
- 230000005540 biological transmission Effects 0.000 claims abstract description 154
- 238000000034 method Methods 0.000 claims description 118
- 230000000694 effects Effects 0.000 claims description 30
- 230000005236 sound signal Effects 0.000 claims description 21
- 230000003139 buffering effect Effects 0.000 claims 5
- 238000004590 computer program Methods 0.000 claims 4
- 230000008878 coupling Effects 0.000 claims 4
- 238000010168 coupling process Methods 0.000 claims 4
- 238000005859 coupling reaction Methods 0.000 claims 4
- 238000012545 processing Methods 0.000 abstract description 228
- 230000037361 pathway Effects 0.000 abstract description 68
- 238000006243 chemical reaction Methods 0.000 abstract description 55
- 230000001747 exhibiting effect Effects 0.000 abstract 1
- 230000002093 peripheral effect Effects 0.000 description 272
- 101000821257 Homo sapiens Syncoilin Proteins 0.000 description 130
- 102100021919 Syncoilin Human genes 0.000 description 130
- 108091006146 Channels Proteins 0.000 description 110
- 230000005012 migration Effects 0.000 description 71
- 238000013508 migration Methods 0.000 description 69
- 230000008569 process Effects 0.000 description 57
- 238000010586 diagram Methods 0.000 description 55
- 230000002269 spontaneous effect Effects 0.000 description 51
- 238000003860 storage Methods 0.000 description 47
- 230000004044 response Effects 0.000 description 43
- 239000012634 fragment Substances 0.000 description 36
- 235000008694 Humulus lupulus Nutrition 0.000 description 28
- 238000011144 upstream manufacturing Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 25
- 230000000875 corresponding effect Effects 0.000 description 24
- 238000003032 molecular docking Methods 0.000 description 23
- 230000008901 benefit Effects 0.000 description 19
- 238000010926 purge Methods 0.000 description 19
- 238000007726 management method Methods 0.000 description 16
- 238000012544 monitoring process Methods 0.000 description 16
- 230000001413 cellular effect Effects 0.000 description 15
- 230000008859 change Effects 0.000 description 15
- 230000001934 delay Effects 0.000 description 15
- 238000013461 design Methods 0.000 description 15
- 238000012546 transfer Methods 0.000 description 14
- 239000000470 constituent Substances 0.000 description 13
- 238000009434 installation Methods 0.000 description 13
- 238000012360 testing method Methods 0.000 description 12
- 238000013459 approach Methods 0.000 description 11
- 230000001360 synchronised effect Effects 0.000 description 11
- 239000000047 product Substances 0.000 description 10
- 230000002829 reductive effect Effects 0.000 description 10
- 238000013519 translation Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 9
- 230000008867 communication pathway Effects 0.000 description 9
- 230000009977 dual effect Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 7
- 230000000977 initiatory effect Effects 0.000 description 7
- 238000007639 printing Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 6
- 230000000454 anti-cipatory effect Effects 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 230000001976 improved effect Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 238000001228 spectrum Methods 0.000 description 5
- 230000007480 spreading Effects 0.000 description 5
- 238000003892 spreading Methods 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 239000006185 dispersion Substances 0.000 description 4
- 238000005562 fading Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 4
- 239000013589 supplement Substances 0.000 description 4
- 206010012186 Delayed delivery Diseases 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 241001417511 Ardis Species 0.000 description 2
- 235000008645 Chenopodium bonus henricus Nutrition 0.000 description 2
- 244000138502 Chenopodium bonus henricus Species 0.000 description 2
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 2
- 244000046052 Phaseolus vulgaris Species 0.000 description 2
- 230000032683 aging Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 238000010348 incorporation Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000002618 waking effect Effects 0.000 description 2
- HRANPRDGABOKNQ-ORGXEYTDSA-N (1r,3r,3as,3br,7ar,8as,8bs,8cs,10as)-1-acetyl-5-chloro-3-hydroxy-8b,10a-dimethyl-7-oxo-1,2,3,3a,3b,7,7a,8,8a,8b,8c,9,10,10a-tetradecahydrocyclopenta[a]cyclopropa[g]phenanthren-1-yl acetate Chemical compound C1=C(Cl)C2=CC(=O)[C@@H]3C[C@@H]3[C@]2(C)[C@@H]2[C@@H]1[C@@H]1[C@H](O)C[C@@](C(C)=O)(OC(=O)C)[C@@]1(C)CC2 HRANPRDGABOKNQ-ORGXEYTDSA-N 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 208000015976 Corneal dystrophy-perceptive deafness syndrome Diseases 0.000 description 1
- 241001611138 Isma Species 0.000 description 1
- 206010000210 abortion Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 235000019504 cigarettes Nutrition 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 210000000245 forearm Anatomy 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000001303 quality assessment method Methods 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/253—Telephone sets using digital voice transmission
- H04M1/2535—Telephone sets using digital voice transmission adapted for voice communication over an Internet Protocol [IP] network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1626—Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1632—External expansion units, e.g. docking stations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/02—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
- G06F15/0225—User interface arrangements, e.g. keyboard, display; Interfaces to other computer systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
- G06K17/0022—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisions for transferring data to distant stations, e.g. from a sensing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10554—Moving beam scanning
- G06K7/10594—Beam path
- G06K7/10683—Arrangement of fixed elements
- G06K7/10702—Particularities of propagating elements, e.g. lenses, mirrors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10712—Fixed beam scanning
- G06K7/10722—Photodetector array or CCD scanning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/10841—Particularities of the light-sensitive elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/10851—Circuits for pulse shaping, amplifying, eliminating noise signals, checking the function of the sensing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/10881—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices constructional details of hand-held scanners
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/1098—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices the scanning arrangement having a modular construction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/12—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using a selected wavelength, e.g. to sense red marks and ignore blue marks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/343—Cards including a counter
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/02—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by keys or other credit registering devices
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/0036—Checkout procedures
- G07G1/0045—Checkout procedures with a code reader for reading of an identifying code of the article to be registered, e.g. barcode reader or radio-frequency identity [RFID] reader
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03C—MODULATION
- H03C3/00—Angle modulation
- H03C3/02—Details
- H03C3/09—Modifications of modulator for regulating the mean frequency
- H03C3/0908—Modifications of modulator for regulating the mean frequency using a phase locked loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
- H04L1/0003—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate by switching between different modulation schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0023—Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
- H04L1/0025—Transmission of mode-switching indication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0023—Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
- H04L1/0032—Without explicit signalling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1671—Details of the supervisory signal the supervisory signal being transmitted together with control information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1685—Details of the supervisory signal the supervisory signal being transmitted in response to a specific request, e.g. to a polling signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/10—Frequency-modulated carrier systems, i.e. using frequency-shift keying
- H04L27/12—Modulator circuits; Transmitter circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/10—Frequency-modulated carrier systems, i.e. using frequency-shift keying
- H04L27/14—Demodulator circuits; Receiver circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/10—Frequency-modulated carrier systems, i.e. using frequency-shift keying
- H04L27/14—Demodulator circuits; Receiver circuits
- H04L27/156—Demodulator circuits; Receiver circuits with demodulation using temporal properties of the received signal, e.g. detecting pulse width
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1023—Media gateways
- H04L65/103—Media gateways in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1033—Signalling gateways
- H04L65/104—Signalling gateways in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1095—Inter-network session transfer or sharing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/18—Selecting a network or a communication service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0261—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/04—TPC
- H04W52/38—TPC being performed in particular situations
- H04W52/46—TPC being performed in particular situations in multi hop networks, e.g. wireless relay networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/20—Manipulation of established connections
- H04W76/22—Manipulation of transport tunnels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/02—Transmitters
- H04B1/04—Circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/06—Receivers
- H04B1/16—Circuits
- H04B1/1607—Supply circuits
- H04B1/1615—Switching on; Switching off, e.g. remotely
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/02—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
- H04B7/04—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
- H04B7/08—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station
- H04B7/0802—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station using antenna selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/02—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
- H04B7/10—Polarisation diversity; Directional diversity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/14—Details of telephonic subscriber devices including a card reading device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M7/00—Arrangements for interconnection between switching centres
- H04M7/006—Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
- H04W28/14—Flow control between communication endpoints using intermediate storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/18—Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/04—TPC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/04—TPC
- H04W52/38—TPC being performed in particular situations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/16—Gateway arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W92/00—Interfaces specially adapted for wireless communication networks
- H04W92/02—Inter-networking arrangements
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Definitions
- PCT Application Serial No. PCT/US94/05037 is based on U.S. application Ser. No. 08/198,404, filed Feb. 22, 1994 (Attorney Docket Nos. 10082US07; DN37998XA), which is itself a continuation of U.S. application Ser. No. 08/198,452, filed Feb. 18, 1994 (Attorney Docket Nos. 10082US06; DN37998X), which is in turn a continuation-in-part of U.S. application Ser. No. 08/168,478, filed Dec. 16, 1993 (Attorney Docket Nos. 10092US06; DN37998E), and PCT Application Serial No. PCT/US93/12628 filed Dec.
- the present invention relates generally to data communication networks having a plurality of wired and/or wireless access servers configured to support remote processing, data storage and voice communication. More specifically, this invention relates to the intelligent routing of packetized voice communication between telephones and radio terminals through wireless and hardwired channels in a data processing network.
- radio base station networks To support data collection, multiple radio base station networks have been developed to overcome a variety of problems with single radio base station networks such as spanning physical radio wave penetration barriers, wasted transmission power by portable computing devices, etc. However, multiple radio base station networks have their own inherent problems.
- each base station transmission is prone to collision with neighboring base station transmissions in the overlapping coverage areas between the base stations. Therefore, it often proves undesirable for each base station to use a single or common communication channel.
- Frequency hopping is a desirable transmission technique because of its ability to combat frequency selective fading, avoid narrowband interference, and provide multiple communications channels.
- Such data collection networks and their communication protocols have been specifically designed for data collection and forwarding through wireless and hardwired links. They are designed in attempts to optimize overall data flow through the network. Among other flow optimizing techniques used, the data is segmented and packetized in preparation for transmission. Packet by packet, the data is transmitted as channel bandwidth becomes available.
- the channel is shared by many participants, each sending segments of data in packets whenever an opening in the channel occurs.
- An object of the invention is to provide a method and apparatus wherein seamless voice and data communication is provided among both roaming devices within wireless portions of a communication network and stationary devices within hardwired portions of the network.
- a communication network which operates to support voice and data communication within a premises.
- the communication network comprises a plurality of mobile network devices, a stationary network device, a wireless network, a hardwired network and a telephone.
- Each mobile network device has a buffer that stores incoming digital voice information for a predetermined queuing period before beginning voice reproduction from the stored digital voice information.
- Each mobile network device uses the wireless network to selectively exchange voice and data packets with other mobile network devices.
- the hardwired network is connected to both said stationary network device and the wireless network, and is used to route voice and data packets between the stationary network device and the plurality of mobile network devices which participate via the wireless network.
- the stationary network device also has a buffer that stores digital voice information, received from the wireless network, for a predetermined queuing period before converting it into an analog voice stream. After conversion, the stationary network device delivers the analog voice stream to the telephone. In addition, the stationary network device converts analog voice streams received from the telephone into voice packets for delivery via the hardwired and wireless networks to a selected one of the mobile network devices.
- the predetermined queuing period can be determined through examining delays found in test signal routing.
- the stationary network device can be a computer.
- the wireless network may utilize a polling protocol and spanning tree routing.
- the stationary network device can provide call setup assistance for the telephone.
- the communication network may further comprise a telephone switching network, connected to the stationary network device, which selectively routes analog voice streams received from the telephone onto the telephone switching network.
- the stationary network device may also selectively route analog voice streams received from the telephone switching network to the telephone.
- FIG. 1A is a diagrammatic illustration of a hierarchal communication system built in accordance with the present invention.
- FIG. 1B is a diagrammatic illustration of another hierarchal communication system built in accordance with the present invention.
- FIG. 1C is a diagrammatic illustration of still another hierarchal communication system built in accordance with the present invention.
- FIG. 2 illustrates an embodiment of a basic access interval structure used by a hierarchical network of the present invention.
- FIGS. 3A and 3B illustrate the frequency of operation periodically changing corresponding to access interval boundaries in a frequency hopping communication protocol of the present invention.
- FIGS. 4A and 4B illustrate more than one access interval being used per hop in a frequency hopping communication protocol of the present invention.
- FIG. 5A illustrates an embodiment of an access interval used by the hierarchical network of the present invention wherein a reservation phase is Idle Sense Multiple Access.
- Fig. B illustrates an embodiment of an access interval used by the hierarchical network of the present invention wherein a device response follows a reservation poll.
- FIG. 6A illustrates an embodiment of an access interval used by the hierarchical network of the present invention having multiple reservation slots for transmission of a Request For Poll signal.
- FIG. 6B illustrates an embodiment of an access interval used by the hierarchical network of the present invention wherein general devices contend for channel access.
- FIG. 7A illustrates a sequence in an access interval used by the hierarchical network of the present invention for transferring data from a remote device to a control point device.
- FIG. 7B illustrates a sequence in an access interval used by the hierarchical network of the present invention for transferring data from a control point device to a remote device.
- FIG. 8 illustrates a preferred embodiment of an access interval used by the hierarchical network of the present invention.
- FIGS. 9A and B conceptually illustrate how multiple NETs may be employed in an idealized cellular-type installation according to the present invention.
- FIG. 10 illustrates an access point coverage contour overlap for the multiple NETs Infrastructured Network of FIG. 1 .
- FIG. 11 illustrates hopping sequence reuse in a multiple NET configuration of the present invention.
- FIG. 12 illustrates a hierarchical infrastructured network of the present invention wherein a wireless link connects access points on separate hard wired LANs.
- FIG. 14 illustrates conceptually access points communicating neighboring access point information to facilitate roaming of portable/mobile devices.
- FIG. 15 illustrates a secondary access interval used in the MicroLAN or peripheral LAN in the hierarchical communication network according to the present invention.
- FIG. 16 is a flow chart illustrating the selection of an access point by a mobile computing device for communication exchange.
- FIG. 18 is a flow chart illustrating a terminal that maintains or achieves synchronization with the network after it has gone to sleep for several seconds.
- FIGS. 19A and 19B are flow charts illustrating an access interval during inbound communication.
- FIGS. 20A and 20B are flow charts illustrating an access interval during outbound communication.
- FIG. 21 illustrates a sequence in an access interval used in the hierarchical communication network of the present invention with Time Division Multiple Access slots positioned at the end of the access interval.
- FIG. 22 illustrates a sequence in an access interval used by the hierarchical network of the present invention with the Time Division Multiple Access slots positioned immediately following the SYNC.
- FIG. 23 illustrates a sequence in an access interval used by the hierarchical network of the present invention with the Time Division Multiple Access slots positioned immediately following the SYNC and Reservation Poll.
- FIG. 24 illustrates another sequence in an access interval used by the hierarchical network of the present invention with the Time Division Multiple Access slots positioned immediately following the SYNC.
- FIG. 25 illustrates a portion of an access interval including the preamble, SYNC and Reservation Poll.
- FIG. 26 illustrates the information contained in a sample SYNC message.
- FIG. 27 illustrates the information contained in a sample Reservation Poll.
- FIG. 28B illustrates other features of the present invention in the use of a vehicular LAN which is capable of detaching from the premises LAN when moving out of radio range of the premises LAN to perform a service, and reattaching to the premises LAN when moving within range to automatically report on the services rendered.
- FIG. 28C illustrate other features of the present invention in the use of a vehicular LAN which, when out of range of the premises LAN, is still capable gaining access to the premises LAN via radio WAN communication.
- FIG. 29A is a diagrammatic illustration of the use of a peripheral LAN supporting roaming data collection by an operator according to the present invention.
- FIG. 29B is a diagrammatic illustration of another embodiment of a peripheral LAN which supports roaming data collection by an operator according to the present invention.
- FIG. 30 is a block diagram illustrating the functionality of RF transceivers built in accordance with the present invention.
- FIG. 31 is a diagrammatic illustration of an alternate embodiment of the peripheral LAN shown in FIG. 2 .
- FIG. 32 is a block diagram illustrating a channel access algorithm used by peripheral LAN slave devices in accordance with the present invention.
- FIG. 33A is a timing diagram of the protocol used according to the present invention illustrating a typical communication exchange between a peripheral LAN master device having virtually unlimited power resources and a peripheral LAN slave device.
- FIG. 33B is a timing diagram of the protocol used according to the present invention illustrating a typical communication exchange between a peripheral LAN master device having limited power resources and a peripheral LAN slave device.
- FIG. 33C is also a timing diagram of the protocol used which illustrates a scenario wherein the peripheral LAN master device fails to service the peripheral LAN slave devices.
- FIG. 34 is a timing diagram illustrating the peripheral LAN master device's servicing of both the higher power portion of the premises LAN as well as the lower power peripheral LAN subnetwork with a single or plural radio transceivers.
- FIGS. 35 and 36 are block diagrams illustrating additional power saving features according to the present invention wherein ranging and battery parameters are used to optimally select the appropriate data rate and power level of subsequent transmissions.
- FIG. 37 illustrates an exemplary block diagram of a radio unit capable of current participation on multiple LANs according to the present invention.
- FIG. 38 illustrates an exemplary functional layout of the frequency generator of FIG. 37 according to one embodiment of the present invention.
- FIG. 39 illustrates further detail of the receiver RF processing circuit of FIG. 37 according to one embodiment of the present invention.
- FIG. 40 illustrates further detail of the receiver signal processing circuit of FIG. 37 according to one embodiment of the present invention.
- FIG. 41 illustrates further detail of the receiver signal processing circuit of FIG. 37 according to another embodiment of the present invention.
- FIG. 42 illustrates further detail of the memory unit of FIG. 37 according to one embodiment of the present invention.
- FIG. 43 illustrates a software flow chart describing the operation of the control processor in controlling the battery powered radio unit to participate on multiple LANS.
- FIG. 44 is an alternate embodiment of the software flow chart wherein the control processor participates on a master LAN and, when needed, on a slave LAN.
- FIG. 45 illustrates another embodiment of the communication system of the present invention as adapted for servicing a retail store environment.
- FIGS. 46 a - b illustrate a further embodiment of the communication system of the present invention which illustrate the use of access servers that support local processing and provide both data and program migration.
- FIG. 47 a is a flow diagram which illustrates the functionality of the access servers of FIGS. 46 a - b in handling data, processing and direct routing requests.
- FIG. 47 b is a flow diagram utilized by the access servers of FIGS. 46 a - b to manage the migration of data and program code from a source storage and/or processing device toward an end-point device.
- FIG. 48 is a schematic diagram of the access servers of FIGS. 46 a - b illustrating an exemplary circuit layout which supports the functionality described in relation to FIGS. 47 a - b.
- FIG. 49 is a specific exemplary embodiment of an access point in a multi-hop communication network utilized for remote processing of 2-D (two-dimension) code information.
- FIG. 50 is a schematic diagram similar to that shown in FIG. 48 which illustrates the circuit layout used in the access point of FIG. 49 to process the 2-D code information.
- FIGS. 51 a - b are flow diagrams illustrating the operation of the 2-D code processing access point of FIGS. 49-50 .
- FIG. 52 illustrates the structuring of 2-D code information so as to support a hierarchical recognition strategy as used by the access point of FIGS. 49-50 .
- FIG. 53 is a diagram illustrating an exemplary 2-D code wherein the hierarchical structure of FIG. 52 is implemented.
- FIG. 54 is a flow diagram illustrating the functionality of the access point of FIGS. 49-50 in carrying out the hierarchical recognition strategy of FIG. 52 .
- FIG. 55 a is a diagram illustrating the overall flow of both data and voice through another embodiment of the hierarchical communication network of the present invention.
- FIG. 55 b is a diagram which illustrates a summary of the various types of communication pathways for setting up voice sessions between a source and destination network device.
- FIG. 56 a illustrates an embodiment of the conversion circuitry contained within a computer card 5601 which plugs into the computer 5515 of FIG. 55 a.
- FIG. 56 b illustrates an alternate embodiment of the conversion circuitry of FIG. 56 a wherein instead of using an analog subtraction process to separate outgoing voice signals from the combined incoming and outgoing signals, a digital subtraction process is used (at a subtraction circuit 5653 ).
- FIG. 57 is an illustration of the back of the telephone 5525 (also illustrated in FIG. 55 a ) as built in accordance with the present invention.
- FIG. 58 is a schematic block diagram which illustrates the implementation of one embodiment of the conversion circuitry within the telephone 5525 of FIGS. 55 and 57 .
- FIG. 59 is a block diagram illustrating the packet processing functionality of the access devices illustrated in FIG. 55 a.
- FIG. 60 is a flow diagram illustrating the functionality of a source device in the setup of a voice session.
- FIG. 61 is a flow diagram illustrating the functionality of the source device (or assisting access device) when performing call setup.
- FIG. 62 is a flow diagram illustrating ongoing voice session processing performed by a source device (or its assisting access device if needed) and destination device (or its assisting access device if needed).
- FIG. 63 is a diagram which illustrates further application of the present invention in an embodiment which transparently utilizes internet connectivity to support low-cost voice sessions.
- FIG. 1A illustrates a hierarchical communication system 10 within a building in accordance with the present invention.
- the illustrated hierarchical communication system 10 includes a local area network (LAN) for maintaining typical communication flow within the building premises, herein referred to as a premises LAN.
- LAN local area network
- the premises LAN is designed to provide efficient end-to-end routing of information among hardwired and wireless, stationary and roaming devices located within the hierarchical communication system 10 .
- the premises LAN consists of an infrastructure network comprising radio base stations, i.e., wireless access points 15 , and a data base server 16 which may be part of a more extensive, wired LAN (not shown).
- radio base stations i.e., wireless access points 15
- data base server 16 which may be part of a more extensive, wired LAN (not shown).
- base stations which participate in routing and relaying data throughout the communication network are referred to as “access points.” If they also participate in the storage or migration of data and program code or in local processing, the base stations are referred to herein as “access servers.”
- an access point may be modified with additional circuitry and/or programming resources to become an access server.
- access servers and access points are both referred to herein as “access devices.”
- the access points 15 may communicate with each other via hardwired links, such as Ethernet, RS232, etc., or via wireless (radio frequency) links.
- a plurality of roaming terminal devices such as a roaming computing device 20 , participate in the premises LAN of the hierarchical communication network 10 to exchange information with: 1) other roaming computing devices; 2) the data base server 16 ; 3) other devices which might be associated with data base server 16 (not shown); and 4) any other devices accessible via the premises LAN (not shown).
- a roaming computing device can be, for example, a hand-held computer terminal or vehicle mounted computer terminal (vehicle terminal).
- An exemplary spontaneous. LAN involves the use of peripheral devices as illustrated in FIG. 1A .
- a peripheral device 23 such as a printer
- a more direct interconnection proves less intrusive, saves power, and offers a lower cost solution.
- the roaming computing device 20 needing to print: 1) identifies the presence of an available printer, the peripheral device 23 ; 2) establishes an RF link (binds) with the peripheral device 23 ; 3) directly begins transferring the bulk data for printing; and 4) lastly, when the roaming terminal finishes the transfer, the spontaneous LAN with the peripheral device 23 terminates.
- a spontaneous LAN created between the computing devices and peripheral devices is herein referred to as a peripheral LAN.
- Other types of spontaneous LANs such as vehicular LANs, are also possible.
- Embodiments described below identify vehicular LANs and wide area radio networks (WANs) which are part of the hierarchical communication system according to the present invention.
- a spontaneous LAN may operate completely independent of the premises LAN, it is more likely that there will be some degree of coordination between the two. For example, while participating in the peripheral LAN, the roaming computing device 20 may terminate participation in the premises LAN, and vice versa. Alternately, the roaming computing device 20 may only service the peripheral LAN when specific participation on the premises LAN is not required, or vice versa. Moreover, the roaming computing device 20 may attempt to service each peripheral LAN as necessary in a balanced time-sharing fashion, placing little priority upon either LAN. Thus, based on the protocols and hardware selected, a spontaneous LAN can be configured so as to exist hierarchically above, below, at the same level, or independent of the premises LAN.
- the hierarchical communication system of the present invention provides a series of tightly coupled radio LANs and WANs with radio transceiver and communication protocol designs which take into consideration such factors as cost, weight, power conservation, channel loading, response times, interference, communication flow, etc., as modified by a primary factor of multiple participation.
- the peripheral LAN replaces hardwired connection between a roaming computing device and associated peripherals.
- a peripheral LAN will consist of one or more peripherals slaved to a single master roaming computing device, although multiple master roaming computing devices are possible.
- Peripheral devices may be printers, code scanners, magnetic card readers, input styluses, etc.
- Each of the peripheral devices 22 has a built-in radio transceiver to communicate with the roaming computing devices 20 .
- the roaming computing devices 20 are configured with built-in radio transceivers capable of communicating on both the peripheral and premises LAN.
- the access points 15 may be configured with radio transceivers only capable of communicating in the premises LAN. In alternate embodiments, as described below, the access points 15 might instead be configured to participate on both the premises and peripheral LANs.
- the peripheral LAN is intended to provide communications between two or more devices operating within near proximity, e.g., distances of a few tens of feet.
- the majority of constituents of the peripheral LAN are generally devices that do not require access to resources outside their immediate group, or which can suffice with indirect access through devices which participate outside their immediate peripheral LAN group.
- the premises LAN is intended to provide communications between relatively many devices operating across great distances throughout a building.
- the characteristics of the peripheral LAN permit the use of radio transceivers of lower cost, lower power consumption, and generally more simplistic operation than permitted by the premises LAN.
- the operation of the peripheral LAN is adapted for integration with the premises LAN so that a radio transceiver and protocol designed for operation on the premises LAN includes features which allow concurrent or sequentially concurrent operation on the peripheral LAN. For example, by selecting similar communication hardware characteristics and integrating protocols, communication within the premises and peripheral LANs may be achieved with a single radio transceiver.
- radio communication through the premises LAN i.e., among the access points 15 and the roaming computing device 20 , utilizes relatively higher-power spread-spectrum frequency-hopping communication with a reservation access protocol.
- the reservation access protocol facilitates frequency-hopping and supports adaptive data rate selection. Adaptive data rate selection is based upon the quality of communication on the premises LAN radio channel.
- Radio communication through the peripheral LAN utilizes a relatively lower-power single frequency communication also with a reservation access protocol. As more fully described below, the coordinated use of reservation access protocols in the peripheral and premises LANs maximize information flow while minimizing conflicts between devices participating in the two LANs.
- FIG. 1B a small hierarchal communication system 30 built in accordance with the present invention is shown.
- An access point 33 and two roaming or mobile computing devices 35 and 36 form a premises LAN 37 .
- the premises LAN 37 provides for communication among the mobile computing devices 35 and 36 and a host computer 34 .
- the mobile computing devices 35 and 36 can roam anywhere within the range of the access point 33 and still communicate with the host computer 34 via the access point 33 .
- Two peripheral LANs 40 and 41 allow for wireless communication between each mobile computing device 35 and 36 and its respective peripheral devices 43 , 44 and 45 when the mobile computing device is not communicating on the premises LAN 37 .
- the peripheral LAN 40 consists of the mobile computing device 35 and the peripheral device 43
- the peripheral LAN 41 consists of the mobile computing device 36 and the two peripheral devices 44 and 45 .
- FIG. 1C illustrates another embodiment according to the present invention of a larger hierarchal communication system 50 .
- the host computer 55 is connected to access points 56 , 57 , 58 and 59 .
- the host computer 55 and the access points 56 , 57 , 58 and 59 provide the infrastructure for the premises LAN.
- the access points need not be hardwired together.
- the access points 56 , 57 and 58 access each other and the host computer 55 via a hardwired link, while the access point 59 accomplishes such access via a wireless link with the access point 58 .
- the access points 56 , 58 and 59 can support multiple mobile computing devices.
- the access point 56 uses a frequency-hopping communication protocol for maintaining communication with mobile computing devices 61 and 62 .
- each of the mobile computing devices may roam out of range of the access point with which they have been communicating and into the range of an access point with which they will at least temporarily communicate.
- the host computer 55 and the access points 56 , 57 , 58 and 59 and mobile computing devices 61 , 62 , 64 , 65 and 66 constitute a premises LAN.
- each access point operates with a different set of communication parameters. For example, each access point may use a different frequency hopping sequence. Additionally, different access points may not employ a common master clock and will not be synchronized so as to have the frequency hopping sequences start at the same time.
- Mobile computing devices 61 , 62 , 64 , 65 and 66 are capable of roaming into the vicinity of any of the access points 56 , 58 and 59 and connecting thereto.
- mobile computing device 62 may roam into the coverage area of access point 58 , disconnecting from access point 56 and connecting to access point 58 , without losing connectivity with the premises LAN.
- Each mobile computing device 61 , 62 , 64 , 65 and 66 also participates with associated peripherals in a peripheral LAN.
- Each peripheral LAN is made up of the master device and its slave device.
- the access point 57 is shown as a direct participant in not only the premises LAN but also in the peripheral LAN.
- the access point 57 may have either limited or full participation in the premises LAN.
- the access point 57 may be configured as a mobile computing device with the full RF capability of transmission in both the premises and peripheral LANs. Instead, however, participation in the premises LAN may be limited to communicating through the hardwired link, effectively dedicating the access point 57 to the task of servicing peripherals.
- radio transceivers could be used so as to permit simultaneous participation by a single device, factors of cost, size, power and weight make it desirable to only build-in a single radio transceiver capable of multiple participation. Furthermore, even where a plurality of radio transceivers are built-in, simultaneous participation may not be possible depending upon the potential transmission interference between transceivers. In fact, full simultaneous participation may not be desirable at least from a processing standpoint when one transceiver, servicing one LAN, always or usually takes precedence over the other. Justification for such precedence generally exists in a premises LAN over a peripheral LAN.
- transmitter circuitry might be shared for participation in both the premises and peripheral LANs.
- the communication protocol for the peripheral LAN can be tightly coupled with the protocol for the premises LAN, i.e., integrated protocols, so as to accommodate multiple participation.
- one protocol might be designed to take precedence over the other.
- the premises LAN protocol might be designed so as to minimize participation or response time in the peripheral LAN.
- transceiver and protocol analysis also takes place when considering additional multiple participation in the vehicular LAN and WAN environments.
- FIG. 2 illustrates an embodiment of a communication protocol for the premises LAN which uses a basic Access Interval 200 (“AI”) structure according to the present invention.
- an Access Interval is the basic communication unit, a fixed block of time, that allocates bandwidth to synchronization, media access, polled communications, contention-based communications, and scheduled services.
- the Access Interval in FIG. 2 includes a SYNC header 201 generated by a Control Point (“CP”) device of a NET.
- CP Control Point
- NET describes a group of users of a given hopping sequence or a hopping sequence itself.
- the Control Point device is generally the access point 15 referenced above with regard to FIG. 1 .
- the SYNC header 201 is used by constituents of the NET to attain and maintain hopping synchronization.
- a reservation phase 203 follows permitting a reservation poll, which provides the NET constituents an opportunity to gain access to media.
- a sessions frame 205 is next allocated for communication protocol.
- a frame 207 follows for optional time division multiple access (“TDMA”) slots in order to accommodate scheduled services.
- Scheduled services for example, real time voice or slow scan video, are such that a dedicated time slot may be required to provide acceptable quality of service.
- TDMA time division multiple access
- Scheduled services for example, real time voice or slow scan video, are such that a dedicated time slot may be required to provide acceptable quality of service.
- acceptable real-time voice support is possible without dedicating time slots.
- the function of frames 201 , 203 , 205 and 207 will be discussed in greater detail below.
- FIG. 21 illustrates a sequence in an access interval 2100 with the Time Division Multiple Access slots 2113 positioned at the end of the access interval 2100 .
- the HELLO would immediately follow the SYNC 1201 .
- Time Division Multiple Access slots at such a position provides certain advantages including, for example, 1) the SYNC 2101 , HELLO (not shown), Reservation Poll 2103 , may all be combined into a single transmission (concatenated frames); 2) hopping information may be moved to or included in the Reservation Poll 2103 allowing for a shorter preamble in the SYNC 2101 ; and 3) the HELLO messages will occur early in the Access Interval 2100 providing for shorter periods during which a sleeping terminals' receiver is on.
- the Time Division Multiple Access slots may also be located at different points within the access interval. Positioning the Time Division Multiple Access slots allow for various systemic advantages. Referring now to FIG. 22 , an access interval 2200 is illustrated showing the Time Division Multiple Access slots 2203 immediately following the SYNC 2201 .
- Time Division Multiple Access slots 2203 at this position provides certain advantages including, for example, 1) better timing accuracy is achieved when the Time Division Multiple Access slots 2203 immediately follow the SYNC 2201 ; 2) session overruns do not interfere with the Time Division Multiple Access slots 2203 ; 3) devices which do not use the Time Division Multiple Access slots 2203 do not necessarily need to be informed of the Time Division Multiple Access slot allocation; and 4) HELLO message may follow Time Division Multiple Access slots 2203 , Reservation Slots 2207 or Reservation Resolution Poll 2209 .
- an access interval 2300 is illustrated showing the Time Division Multiple Access slots 2305 immediately following the SYNC 2301 and the Reservation Poll 2303 .
- this were a HELLO interval a HELLO message would immediately follow the Reservation Resolution Poll 2309 .
- Time Division Multiple Access slots 2305 at the position shown in FIG. 23 provides certain advantages including, for example, 1) the Time Division Multiple Access slot timing is keyed to SYNC 2301 for better accuracy; 2) the number of Time Division Multiple Access slots 2305 may be indicated in SYNC 2301 or the Reservation Poll 2303 , providing greater flexibility; 3) session frame overruns do not interfere with Time Division Multiple Access slots 2305 ; 4) only one maintenance transmission is required per Access Interval 2300 ; and 5) hopping information may be moved to or included in the Reservation Poll 2303 , permitting a shorter preamble in SYNC 2301 .
- the Reservation Poll 2303 would allocate the correct number of slots and indicate which are reserved for Time Division Multiple Access. For example, to use Idle Sense Multiple Access 1 slot) with 1 inbound and 1 outbound Time Division Multiple Access slots, three slots would be allocated with the first two slots reserved.
- the appropriate Time Division Multiple Access slot duration is 80 bits at a hop rate of 200 hops per second which is just about the expected duration of a Request for Poll. At slower hop rates, multiple slots could be allocated to Time Division Multiple Access allowing the Time Division Multiple Access slot duration to be constant regardless of hop rate.
- FIG. 24 another access interval 2400 is illustrated showing the Time Division Multiple. Access slots 2403 immediately following the SYNC 2401 .
- the Poll Message Queue 2405 immediately follows the Time Division Multiple Access slots 2403 .
- the configuration shown in FIG. 24 provides for certain advantages including, for example, 1) the Time Division Multiple Access slot timing is keyed to SYNC 2401 for better accuracy; and 2) session frame overruns do not interfere with Time Division Multiple Access slots 2403 .
- FIG. 21 and in FIG. 23 are preferred because they allow the Reservation Poll messages to be transmitted immediately following the SYNC and because of the power management and interference reduction advantages.
- all message transmissions use standard high-level data link control (“HDLC”) data framing.
- Each message is delimited by High-Level Data Link Control Flags, consisting of the binary string 01111110, at the beginning of the message.
- a preamble consisting of a known data pattern, precedes the initial FLAG. This preamble is used to attain clock and bit synchronization prior to the start of data.
- Receiver antenna selection is also made during the preamble for antenna diversity.
- a CRC for error detection immediately precedes the ending FLAG.
- Data is NRZ-I (differentially) encoded to improve data clock recovery.
- High-Level Data Link Control NRZ-I data is run-length-limited to six consecutive bits of the same state.
- Data frames may be concatenated, with two or more frames sent during the same transmission, with a single FLAG separating them.
- An example of this is SYNC, followed by a HELLO or Reservation Poll (SYNC, HELLO and Reservation Poll are discussed more fully below).
- the Access Interval structure of the present invention is also suitable for single channel and direct sequence spread spectrum systems.
- the consistent timing of channel access, and the relative freedom from collisions due to channel contention, provide desirable benefits in systems that support portable, battery powered devices regardless of modulation type or channelization. Functions that are unique to frequency hopping may be omitted if other channelization approaches are used.
- FIGS. 3 a and 3 b illustrate the frequency of operation periodically changing corresponding to Access Interval boundaries in a frequency hopping system.
- Frequency hopping systems use a hopping sequence, which is a repeating list of frequencies of length (n) selected in a pseudo random order and is known to all devices within a coverage area.
- FIG. 3 a illustrates a frequency hopping system having one Access Interval 301 per frequency hop (the hop occurring every 10 milliseconds) and a length of 79.
- FIG. 3 b illustrates a frequency hopping system having one Access Interval 303 per frequency hop (the hop occurring every 20 milliseconds) and a length of 79.
- the 20 ms time frame is preferred for a protocol stack that uses a maximum network layer frame of up to 1536 bytes payload while maintaining two real time voice communications channels.
- Access interval duration may be optimized for other conditions.
- Access Interval length is communicated to the NET during the SYNC portion of the Access Interval. This allows Access Interval duration, and other NET parameters to be adjusted without reprogramming every device within the NET.
- one or more Access Intervals may be used during each dwell in a frequency hopping system.
- a dwell is the length of time (d) each frequency in the hopping sequence is occupied by the system.
- FIGS. 4 a and 4 b show illustrations of cases where more than one 20 ms Access Interval 401 is used per hop. This may be appropriate for some instances where it is undesirable to hop at higher rates because of relatively long frequency switching times of the radio hardware, where import, export, or regulatory restrictions disallow hopping at a faster rate, or in some applications where it is desirable to maintain operation on each channel for a longer period. An example of the latter is the case where larger files or data records are transferred routinely.
- the Access Interval 200 of FIG. 2 begins with a SYNC header 201 .
- the SYNC is generated by the Control Point (CP) device of the NET.
- the SYNC is used by constituents of the NET to attain and maintain hopping synchronization. Included in the SYNC are the following.
- SYNC messages that are on multiples of 3 Access intervals are labeled as priority SYNC messages. “Sleeping” terminals use priority SYNCs to manage their internal sleep algorithms. Sleeping terminals and Implicit Idle Sense are discussed in more detail below.
- SYNC messages are preceded by dead time, which must be allocated to account for timing uncertainty between NET clocks and local clocks within NET constituents.
- dead time must also include frequency switching time for the RF modem.
- the Reservation Poll frame 203 immediately follows the SYNC header 201 .
- the two messages are concatenated High-Level Data Link Control frames separated by one or more Flags.
- the reservation poll provides NET constituents an opportunity to gain access to the media. It includes the following.
- the control point device will generally specify a single slot 501 as shown in FIG. 5 a , with a p factor ⁇ 1.
- the reservation phase is Idle Sense Multiple Access (“ISMA”).
- ISMA Idle Sense Multiple Access
- Devices with transmission requirements that successfully detect the Reservation Poll will transmit a Request for Poll (“RFP”) with probability p and defer transmission with probability 1-p.
- Fig. b shows a device response address 65 503 following the reservation poll.
- n multiple reservation slots will be specified, generally with a probability factor p of 1.
- a device will randomly choose one of n slots for transmission of their Request for Poll.
- the slotted reservation approach is particularly appropriate in instances where many NETs are operating in near proximity, since it diminishes reliance on listen before talk (“LBT”) (explained more fully below).
- LBT listen before talk
- the number of slots n is determined by a slot allocation algorithm that allocates additional slots as system loading increases.
- FIG. 6 a shows multiple slots 601 .
- the Control Point may indicate a number of slots, e.g., not more than 6, and a probability less than 1. This will cause some number of devices to defer responding with a Request for Poll in any of the slots. This prevents the control point device from introducing the overhead of a large number of slots in response to heavy demand for communications, by dictating that some units back off until demand diminishes.
- a pending message list is included in the Reservation Poll.
- the pending message list includes the addresses of devices for which the Control Point device has messages in queue. Devices receiving their address may contend for the channel by responding with a Request For Poll (RFP) in the slot response phase.
- FIG. 6 b shows several devices 603 , 605 and 607 contending for channel access. Messages that the Control Point device receives through the wired infrastructure that are destined for Type 1 devices, and inactive Type 3 devices whose awake window has expired, are immediately buffered, and the device addresses are added to the pending message list. When a message is received through the infrastructure for a Type 2 device, or an active Type 3 device, their address is prioritized at the top of the polling queue. (Device Types and the polling queue are described below.) The pending message list is aged over a period of several seconds. If pending messages are not accessed within this period, they are dropped.
- This message type includes the addresses of the Control Point device and requesting device, the type and length of the message it has to transmit, and a field that identifies the type of device. Devices that detect their address in the pending message list also contend for access in this manner.
- devices may be Type 1, Type 2, or Type 3.
- Type 1 devices are those which require critical battery management. These may be in a power saving, non-operational mode much of the time, only occasionally “waking” to receive sufficient numbers of SYNC and Reservation Poll messages to maintain connectivity to the NET.
- Type 2 devices are those that are typically powered up and monitoring the NET at all times.
- Type 3 units are devices that will remain awake for a window period following their last transmission in anticipation of a response. Other device types employing different power management schemes may be added.
- FIG. 6 b shows two devices 605 , address 111 , and 607 , address 02 , that may be subject to collision or capture.
- the Control Point device may or may not be able to detect collisions by detecting evidence of recovered clock or data in a slot, or by detecting an increase in RF energy in the receiver (using the Received Signal Strength Indicator, (“RSSI”)) corresponding to the slot interval. Collision detection is used in the slot allocation algorithm for determining addition or deletion of slots in upcoming Reservation Polls.
- RSSI Received Signal Strength Indicator
- devices that respond in later slots may transmit the addresses of devices they detect in earlier slots as part of their Request for Poll.
- Request for Polls which result in collisions at the Control Point device often are captured at other remote devices, since the spatial relationship between devices that created the collision at the base does not exist for other device locations within the NET.
- the duration of the response slots must be increased slightly to provide this capability.
- Control Point device If the Control Point device receives one or more valid Request for Polls following a Reservation Poll, it issues a Reservation Resolution (“RR”) Poll and places the addresses of the identified devices in a polling queue.
- RR Reservation Resolution
- the Reservation Resolution message also serves as a poll of the first unit in the queue. Addresses from previous Access Intervals and addresses of intended recipients of outbound messages are also in the queue.
- Outbound messages obtained through the network infrastructure may result in recipient addresses being prioritized in the queue, that is, if the recipients are active devices—Type 2 devices or Type 3 devices whose awake window has not expired. This eliminates the need for channel contention for many outbound messages, improving efficiency. Messages for Type 1 devices are buffered, and the recipient address is placed in the pending message list for the next Access Interval.
- the polling order is as follows:
- Fragments may be any length up to the maximum, eliminating the inefficiency that results when messages that are not integer multiples of the fragment length are transmitted in systems that employ fixed sizes.
- the sequence for transferring data from a remote device to the control point device is illustrated in FIG. 7 a . It is assumed that address 65 is the first address in the polling queue.
- the Reservation Resolution poll 701 from the control point device includes the device address and the message length that device 65 provided in its initial Request for Poll.
- a first fragment 703 transmitted back from device 65 is a full length fragment. Its header includes a fragment identifier and a field providing indication of the total length of the message. Length information is included in most message types during the sessions period to provide reservation information to devices that may wish to attempt to access the NET following an Explicit Idle Sense (explained more fully below).
- the Control Point device sends a second poll 705 , which both acknowledges the first fragment, and initiates transmission of the second.
- the length parameter is decremented to reflect that the time required for completion of the message transfer is reduced.
- a second fragment 707 is transmitted in response, and also contains a decremented length field.
- the Control Point device sends a third poll 709 . This pattern is continued until a final fragment 711 containing an End of Data (EOD) indication is received. In FIG. 7 , the final fragment is shorter than a maximum length fragment.
- the Control Point device sends a final Acknowledge (ACK), and the device sends a final CLEAR 713 to indicate conclusion of the transmission.
- ACK Acknowledge
- the CLEAR message contains a probability factor p for Explicit Idle Sense (explained more fully below).
- the value of p is determined by the Control Point device in the ACK and echoed by the device termination communication.
- a p of zero indicates that the control point device will be initiating other communications immediately following receipt of the CLEAR message.
- a probability other than 0 indicates an Explicit Idle Sense.
- the Control Point device may suspend attempts to communicate with the device based upon a retry limit, and begin polling of the next address in the queue.
- FIGS. 19A and 19B A flow chart depicting how inbound messages are received during an access interval is shown in FIGS. 19A and 19B .
- FIGS. 20A and 20B A flow chart depicting how outbound messages are transmitted during an access interval is shown in FIGS. 20A and 20B .
- Outbound messages are transmitted in a similar fashion as inbound messages, with the Control Point and device roles largely reversed as illustrated in FIG. 7 b .
- the Control Point When the Control Point reaches an address in the queue for which it has an outbound message, the Control Point transmits a Request for Poll 721 identifying the address of the device and the length of the message. The response back from the device would be a poll with an embedded length field.
- the same POLL/FRAGMENT/ACK/CLEAR structure and retry mechanisms as described above with regard to inbound messages in reference to FIG. 7 a are maintained.
- the CLEAR from the device indicates a probability p of zero. If the polling queue is empty, the Control Point may send a final or terminating CLEAR 723 containing a probability for Explicit Idle Sense.
- All terminating ACK or CLEAR messages contain fields to aid in synchronization of new units to the NET.
- the content of these fields is identical to that in the SYNC message, except that the timing character is deleted. Synchronization is discussed more fully below.
- Broadcast Messages intended for groups of addresses, or all addresses within a NET may be transmitted during the sessions period. Broadcast messages are not individually acknowledged. These messages may be communicated at intervals over the course of several Access Intervals to provide reliable communication. Messages such as SYNC and Reservation Polls are specialized broadcast messages, with dedicated bandwidth in the Access Interval structure.
- Portable/mobile devices may employ transmitter power control during the sessions period to reduce potential interference with other NETs that may occasionally be on the same or adjacent channels. These devices will use Received Signal Strength Indicator readings from outbound messages to determine if transmitter power may be reduced for their inbound transmission. Because of the need to maintain channel reservations and Listen Before Talk capabilities, the Control Point device does not use transmitter power control. Since Control Point devices are generally part of an installed system infrastructure, they are likely to be physically separated from devices operating in other NETs. They are therefore less likely to cause interference to devices in other NETs than portable devices, which may operate in proximity to devices in other NETs.
- control point devices will empty the polling queue before the conclusion of the access interval.
- Two mechanisms within the Access Control Protocol, Explicit and Implicit Idle Sense, are provided to improve bandwidth utilization. These supplemental access mechanisms often provide means for devices that failed to gain reservations during the reservation phase to gain access to the NET within the Access Interval. To assume an Explicit or Implicit Idle Sense, a device must have detected a valid SYNC and Reservation Poll in the current Access Interval.
- a probability factor p ⁇ 0 in the final (terminating) ACK or CLEAR from the control point device provides the function of an Explicit Idle. Sense (mentioned above). Devices with transmission requirements solicit Request for Polls using the same rules normally used for a single slot Reservation Poll. Successfully identified addresses are placed in the polling queue, and are polled immediately or in the next Access Interval depending on the time remaining in the current Access Interval.
- the p factor for Explicit Idle Sense is subject to the same optimization algorithm as the Reservation Poll probability.
- Reservations allow devices to predictably power down during the period that another device has reserved the NET to conserve battery power, without losing the ability to gain access to the NET.
- Implicit Idle Sense provides an additional means of channel access.
- An Implicit Idle Sense is assumed whenever a device detects a quiet interval period greater than or equal to the duration of a Poll plus the maximum fragment length after a channel reservation has expired. Detection based upon simple physical metrics, such as a change in Received Signal Strength Indicator or lack of receiver clock recovery during the quiet interval, are preferred methods of ascertaining channel activity. Algorithms based upon these types of indicators are generally less likely to provide a false indication of an inactive channel than those that require successful decoding of transmissions to determine channel activity. False invocation of an Implicit Idle Sense is the only mechanism by which data transmissions are subject to collision within the NET. Thus, the Implicit Algorithm must be conservative.
- Quiet interval sensing may begin at the following times within the Access Interval:
- Implicit Idle Sense Access will generally be less than or equal to the factor in Explicit Idle Sense.
- a device must receive the SYNC and Reservation Polls at the beginning of an Access Interval to use Implicit Idle Sense.
- the Reservation Poll provides indication of guaranteed bandwidth allocation to scheduled services at the end of the Access Interval, which may shorten the period available for Bandwidth On Demand communications.
- Time Division Multiple Access slots are allocated as multiples of 160 bits payload at 1 MBIT/sec, plus overhead for a total of 300 ⁇ s.
- acceptable voice communication can be obtained by allocating 1 Time Division Multiple Access slot each for inbound and outbound communication per access interval.
- For 20 ms access intervals two slots each way is required.
- a system employing 10 ms access intervals at 100 hops per second may improve transmission quality by using two or three slots each Access Interval and sending information redundantly over two or three access intervals using interleaved block codes.
- Scheduled transmissions are generally not subject to processing or validation by the control point device, and are passed through from source to destination. Use of interleaved error correction coding or other measures to improve reliability is transparent to the NET.
- Real time full-duplex voice communication delays sometimes prove too excessive where the premises LAN is interconnected with the public switched telephone network (“PSTN”), which introduces its own delays.
- Two way services i.e., full-duplex services
- voice communications are the most sensitive to transport delay because delay impacts the interaction of the communicating parties.
- One way services i.e., half-duplex services
- One way services are good candidates for interleaving or other forms of redundant transmission.
- hop rate determines the duration of outages that may occur. If one or more frequencies in the hop sequence are subject to interference, for instance, scheduled transmissions during those hops will be disrupted. In a system that hops slowly, detrimental outages of hundreds of milliseconds will occur resulting in poor transmission quality. Occasional losses of smaller durations, e.g., 10 ms or 20 ms, are generally less perceptible, indicating that faster hop rates are desirable if the NET is to offer real time voice transport.
- Scheduled service intervals may also be used for data transport on a scheduled or priority basis. Telemetry, data logging, print spooling, modem replacement, or other functions are possible. For these activities, a few Time Division Multiple Access slots scheduled for example every fourth, eighth, or sixteenth Al are necessary.
- the ability of the NET to adaptively switch between two or more data rates is desirable.
- implementation of data rate switching may be accomplished by selecting a standard rate of communications, e.g., 250 KBPS and a high rate of communications of 1 Mbit/sec.
- Messages that contain system status information including SYNC, Reservation Polls, Reservation Resolution Polls (Request for Polls), Polls, ACKs and CLEARS are transmitted at the standard rate.
- SYNC Reservation Polls
- Reservation Resolution Polls Request for Polls
- Polls ACKs
- CLEARS CLEARS
- These messages are generally short, and the time required for transmission is largely determined by hardware overhead, e.g., transmitter receiver switching time.
- the incremental overhead introduced by transmitting these messages at the lower rate is therefore small in comparison to the total length of an access interval.
- the reliability of reception of these messages will increase, which will eliminate unnecessary retries in some instances where fragments are received successfully, but acknowledgments or polls are missed.
- a test pattern at the higher data rate is inserted in each Poll (not in Reservation Polls, however).
- the Poll recipient evaluates signal quality based on the high data rate test pattern, Received Signal Strength Indicator, and other parameters to determine whether to transmit a fragment at the high rate or the low rate. Fragment lengths are selected such that high and low rate maximum fragment lengths are the same duration. In other words, a fragment at the low rate conveys approximately 1 ⁇ 4 the payload of a fragment for the case where the data rate is four times greater.
- This method is generally suitable for transaction oriented communications, which frequently require short message transmissions.
- the length field in Polls and messages can be used to allow different fragment lengths for the two data rates while still providing channel reservation information to other devices in the NET. This method also provides for forward migration. As modulation and demodulation methods improve, newer products can be added to old networks by upgrading Control Points devices. Both new and old devices share the ability to communicate at a common low data rate.
- An alternate embodiment uses signaling messages such as SYNC, Reservation Polls, Request for Polls, etc., at the higher rate with fall back operation to the standard rate for the communications sessions only.
- SYNC and Reservation Polls at the high rate constitute a high data rate test message.
- the Request for Poll response to the Reservation Poll at the high rate may include a field indicating that sessions communications should take place at the fall back, standard rate. Signal quality measures such as signal strength and clock jitter are appropriate.
- Data rate selection information is included with the device address in the polling queue. When the device is polled, it will be polled at the rate indicated in the Request for Poll. Channel reservation information in the Reservation Resolution Poll will indicate the reservation duration based upon the data rate indicated.
- the fact that SYNC and Reservation Polls must be detectable at the high data rate prioritizes access to the NET for those devices that have acceptable connectivity during the current access interval.
- This general approach has desirable characteristics in a frequency hopping system, as the propagation characteristics between devices may change significantly as the NET changes from frequency to frequency within the hopping sequence, or over several Access Intervals during the dwell time on a single frequency.
- Reduction in data rate in this system is primarily intended to remedy the data smearing (inter-symbol interference) effects of dispersion due to excess delay, rather than temporarily poor signal to noise ratio due to frequency selective fading.
- Devices that receive high data rate transmissions with acceptable signal strength but high jitter are likely to be experiencing the effect of dispersion.
- preambles that can be received at either rate.
- 01 and 110 sent at the low rate correspond to 00001111 and 111111110000 at the high rate.
- These preambles are transmitted continuously before the transmission of the High-Level Data Link Control FLAG character at the correct data rate indicating the start of a message.
- a preamble of 20 bits of 01 at the low rate indicates operation at the high rate.
- a preamble of 30 bits of 110 indicates operation at the low rate.
- a receiver tuned to either rate is capable of receiving both types of preambles and initiating the proper decoding mechanisms for the intended rate of transmission.
- This general technique is applicable to binary modulation schemes, for example, a frequency modulated system where a common frequency deviation value is used for both data rates. It is also applicable to systems where switching occurs between binary and multilevel modulation, such as disclosed in pending U.S. application Ser. No. 07/910,865, filed Jul. 6, 1992.
- the preamble 2501 starts at the beginning of the Access Interval 2500 and applied to an RF modem while it is switching frequencies. Since the switching time is a worst case, this causes the preamble 2501 to be present and detectable prior to the allocated 150 ⁇ sec period in some instances. It would be equally appropriate to begin preamble transmission 50 or 100 ⁇ sec into the switching period if that would be more convenient. The timing has been selected to allow 100 ⁇ sec.
- a sample SYNC message 2600 is shown.
- a sample Reservation Poll 2700 is shown. In these examples, the hopping synchronization information has been positioned in the Reservation Poll 2700 .
- any transmission at the lower data rate is preceded by a header at the high data rate that conveys NET management information, i.e., channel reservation status.
- NET management information i.e., channel reservation status.
- Devices other than those directly involved in polling or fragment transmission need only monitor at the high rate for channel reservation information.
- the header at the high rate and the following transmission at the low rate are concatenated High-Level Data Link Control frames, with an appropriate preamble for low rate clock recovery synchronization inbetween.
- HELLO message The basic method for communication of status information regarding the premises LAN is the HELLO message.
- HELLO messages are sent routinely, but relatively infrequently, for example, every 90 Access Intervals.
- the HELLO transmission interval is tied to the Priority SYNC interval, so that the HELLO interval corresponds to Access Intervals where SYNC is transmitted if the network is lightly utilized.
- the maximum transmission duration by a device should be limited to the time that the device moving at a maximum expected velocity can traverse 1 ⁇ 4 wavelength of the maximum carrier frequency. The duration may be further reduced to compensate for link bit error rate characteristics or expected duration or frequency of interference bursts.
- a maximum transmission duration of 2.5 ms is suitable for 1 MBIT/SEC transmission, with a device velocity of 15 mph, in a multiple NET environment.
- the receiving unit makes an antenna diversity decision during the preamble portion of each transmission.
- the antenna used for reception for each device address is then recorded in memory so that the correct antenna will be used for response messages to each address. While diversity selection is only valid for a short time, it is not necessary to age this information, because antenna selection is equi-probable even after diversity information is no longer valid.
- the access points 15 may be interconnected via industry standard wired LANs, such as IEEE 802.3 Ethernet, or IEEE 802.5 Token Ring. Access points may be added to an existing LAN without the need to install additional LAN cable. Alternatively, it may be desirable to install access points on dedicated LAN segments to maximize performance of both the radio network and other collocated computer devices.
- industry standard wired LANs such as IEEE 802.3 Ethernet, or IEEE 802.5 Token Ring. Access points may be added to an existing LAN without the need to install additional LAN cable. Alternatively, it may be desirable to install access points on dedicated LAN segments to maximize performance of both the radio network and other collocated computer devices.
- Access points within the premises LAN provide Control Point functions for individual NETs.
- NETs employ different hopping sequences to minimize potential interference between NETs. Regulatory restrictions generally preclude synchronization of multiple NETs to a single master clock, requiring that individual NETs operate independently from one another. The lack of the ability to coordinate timing or frequency usage between NETs introduces the potential for collisions between independent NETs with overlapping coverage areas.
- FIG. 10 illustrates a coverage contour overlap for the multiple NETs in the premises LAN of FIG. 1 .
- Darken shaded areas 1001 indicate areas where access point coverage overlaps. Because the coverage distance of a radio system on an instantaneous basis greatly exceeds the coverage that can be provided on average to sustain a given quality of service, the overlap at any instant may be significantly greater than the coverage contours indicate.
- NETs using the same hopping sequence must be physically isolated from one another to reduce interference to an acceptable level.
- Extensive hopping sequence reuse generally requires site engineering and optimization of access point placement. Using more hopping sequences reduces the need for critical system engineering during installation. Fifteen hopping sequences is a preferred number for hopping sequence reuse, allowing simplified installation and minimal coordination.
- NETs that use different hopping sequences will also temporarily synchronize in timing relationships that cause mutual co-channel interference on common channel frequencies. Since the number of channels that must be used in a sequence is a significant fraction of the total number of channels available, all sequences will share some number of frequencies in common. When sequences are time aligned so that a common frequency is used simultaneously, interference can occur. Optimization of sets of sequences for low cross correlation is necessary to prevent various time alignments of sequences from having more than one or two frequencies in common.
- Optimization of hopping sequences for multiple NETs must also include analysis of imperfect channelization.
- the performance characteristics of the RF modems may not, for economic or power consumption reasons, provide sufficient transmitter spectral containment, receiver dynamic range, or receiver selectivity to guarantee that devices operating on different frequencies in proximity to one another will not interfere.
- adjacent and alternate adjacent channel interference must be considered. Protocol retry mechanisms for fragments lost to adjacent channel interference or limited dynamic range may be randomized to prevent continued disruption of communications in the affected NET.
- FIG. 12 illustrates a wireless link 1201 connecting groups of access points 1203 and 1205 .
- the access points 1203 and 1205 are connected on separate LAN segments 1207 and 1209 .
- the access points 1203 and 1205 may be configured in a wireless point to point mode, wherein one access point serves as a control point device while the others operate in a slave mode dedicated to point to point data transfer.
- Slave access points are configured to operate as portable/mobile devices, and forward communications to master bases by sending Request for Polls during reservation opportunities or Implicit Idle Sense periods. Because of the potential high traffic of point to point links, separate NETs may be allocated for this purpose, with a master communicating with one or more slave units. Master units may also communicate with other portable/mobile devices.
- the COST weighing (discussed below) in a slave's HELLO transmission is preferably set to a high value, to force portable/mobile devices which can connect to another NET to do so.
- Wireless access points serve as control points, but are not connected to the infrastructure through a LAN cable.
- a wireless access point 1301 participates in the premises LAN through a wireless link 1303 to an access point 1305 that is connected to a LAN 1307 .
- Wireless access points operate as slave devices to master access points which are connected to the wired infrastructure.
- the wired and wireless access points share the same hopping sequence, and are synchronized as a common NET. Because they are not connected to the Infrastructure, wireless access points must be used as store and forward devices. Each transmission to a wireless base must be retransmitted to the intended destination device, doubling the number of transmissions occurring in the NET.
- Wireless access points are preferably used for supplementing coverage area of the premises LAN. For example, a wireless access point might provide spot coverage of isolated “dead spots” where data traffic is limited or where providing a wired LAN connection is difficult. Wireless access points may also serve as emergency spares to provide coverage in the event of a failure of a primary access point.
- the wireless access point may be either permanently installed in selected locations, or stored in a maintenance area and quickly positioned and connected to AC or battery power to provide communications while repairs are made to the primary wired access point.
- permanently installed wireless access points might also be used for redundancy, i.e., to monitor an associated access point and to take over when a breakdown is detected.
- the preferred wireless access point embodiment uses interleaved access intervals.
- the parent wired access point and secondary wireless access point coordinate Access Intervals, the wired access point deferring every third or sixth access interval to the wireless base. Since the wired access point transmits priority SYNC messages every third Access Interval, the wireless access point may routinely be allocated one of the two intervening Access Intervals for priority SYNC communications with devices that are attached to it. Communication between the wired and wireless access points may occur during Access Intervals initiated by either access point. Wireless access points may also communicate with devices during an Access Interval using Implicit or Explicit Idle Sense.
- This embodiment provides predictable access for devices attached to the wireless NET, and allows the same power management algorithms to be used regardless of whether the access point is wired or wireless.
- the wireless access point may transmit its own priority SYNC and HELLO messages. Also, devices seeking communications with the wireless access point will automatically be synchronized with the wired base as well, allowing immediate improved access to the network if their mobility has put them within range of the wired base.
- wireless access points Because of the constraint of sharing bandwidth with a wired access point, connectivity of wireless access points is normally limited to one per wired access point. However, in cases where system loading is predictably and consistently light, multiple wireless access points could share a single wired base, e.g., each transmitting in turn in the Access Intervals between the Wired Base Priority SYNC Access Intervals.
- Wireless access points are capable of supporting scheduled traffic. However, since each transmission to a wireless access point must be forwarded, scheduled transmissions through wireless access points use twice the bandwidth as those through wired access points. In other words, twice the number of Time Division Multiple Access slots must be allocated. To avoid introducing excessive delay, communications must be forwarded during the same Access Interval that they are received, or shorter Access Intervals must be used. Scheduled traffic slot assignments must be common to all wireless bases operating within a single NET.
- Wireless access points require reliable communication with their wired counterparts. This dictates smaller coverage contours for wireless access points. If a wired access point provides 80,000 square feet of coverage area, a wireless base can be predicted to provide only an additional forty percent coverage improvement, due to overlap with the wired access point. Frequently, access points are mounted at ceiling level, providing a relatively clearer transmission path between access points than exists between bases and portable/mobile devices located in more obstructed areas near the floor. With careful site engineering and installation, a wireless access point can provide somewhat better than the forty percent predicted improvement, but still less than the coverage of an additional wired base.
- HELLO messages are used to communicate NET and premises LAN status messages. They facilitate load leveling and roaming within the premises LAN and allow sequence maintenance to improve security and performance within the NET. HELLO messages occur periodically in Access Intervals that contain priority SYNC messages. HELLOs are sent periodically relative to the sequence length, for instance, every 90 Access Intervals. HELLOs, like SYNC information, are optionally encrypted to provide greater security.
- Each HELLO message includes a field for COST.
- COST is a measure of the access point to handle additional traffic. A device determining which of two or more access points having adequate signal strength to register which will select the base with the lowest COST factor.
- the base computes COST on the basis of how many devices are attached to the NET, the degree of bandwidth utilization, whether the base is wired or wireless, the number of frequencies experiencing consistent interference within the sequence, and the quality of the connection the base has within the premises LAN.
- FIG. 14 illustrates the concept of access points communicating neighboring access point information through HELLO messages to facilitate roaming of portable/mobile devices.
- access points 1401 , 1403 and 1405 communicate SYNC information amongst themselves via wired backbone (LAN) 1407 .
- a wireless access point 1409 similarly communicates with the access points 1401 , 1403 and 1405 via a wireless link 1411 .
- a portable/mobile device 1413 is initially registered with access point 1401 , which acts as a control point for the portable/mobile device 1413 .
- HELLO messages transmitted by access point 1401 to portable/mobile device 1413 contain fields for neighboring access points 1403 , 1405 and 1409 .
- the portable/mobile device 1413 detects the HELLOs transmitted from access point 1401 and uses the information for coarse synchronization with the other access points 1403 , 1405 and 1409 . This permits the portable/mobile device to roam between access point coverage areas (i.e., between different NETS) without going through a full acquisition phase. Roaming of portable/mobile devices is discussed in more detail below.
- Such communication parameters may include, for example, hopping sequences, spreading codes, or channel frequencies.
- neighbors' information transmission is appropriate in any case where the system uses more than a single channel.
- a single spreading code is often used. Capacity can be added to such a network by employing different spreading codes at each access point.
- the neighbors' information included in the HELLO message from a given access point would include the spreading sequences of access points providing coverage in adjacent coverage areas.
- HELLO messages would include the channel frequencies of adjacent access points.
- communication of neighbors' information may also facilitate the initial selection of an access point by a portable/mobile device attaching to the premises LAN for the first time.
- Access point HELLO messages may also facilitate adaptive access point transmitter power control.
- each access point HELLO transmission could specify the transmitter power level being used by the access point. If a given attached portable/mobile device notes that the current access point transmitter power level is unnecessarily high (creating the possibility of interference with other access points), the portable/mobile unit could send a message to the access point indicating as such, and the access point could adjust the transmitter power level accordingly.
- HELLO messages also enable communication of information indicating to all devices that certain changes in the NET are required.
- the NET may switch hopping sequences periodically to improve security, or to avoid interference sources that consistently interfere with one or two frequencies within a given sequence. Interference may result from outside sources, or from other NETs. Changes to the NET are communicated over the course of several HELLO messages (with a countdown) before the change occurs, so that all devices are likely to be aware of changes and synchronize at the instant of change.
- the encryption key may be periodically changed in HELLOs.
- KEY changes are sent over several HELLOS, and are encrypted using the existing key until the change goes into effect.
- a mobile device may be expected to cross a NET coverage contour in several seconds. Because of the use of multiple, non-synchronized frequency hopping NETs, it is more difficult to provide for simple hand-off between access points than it would be in a system that used cellular techniques with a single frequency per cell.
- the premises LAN makes special provisions for roaming by transmitting coarse frequency hopping synchronization information in HELLO messages.
- the premises LAN uses a spanning tree algorithm to maintain current information regarding the general location of mobile devices within the network.
- routing information is updated throughout the infrastructure.
- Wired access points may broadcast spanning tree updates to attached wireless access points.
- roaming portable and mobile devices initially select and register with an access point Control Point on the basis of link quality, i.e., signal quality, signal strength and COST information transmitted within HELLO messages.
- link quality i.e., signal quality, signal strength and COST information transmitted within HELLO messages.
- a device will remain attached to a particular access point until the link quality degrades below an acceptable level, then it will attempt to determine if an alternative NET is available.
- link quality i.e., signal quality, signal strength and COST information transmitted within HELLO messages.
- link quality i.e., signal quality, signal strength and COST information transmitted within HELLO messages.
- a device will remain attached to a particular access point until the link quality degrades below an acceptable level, then it will attempt to determine if an alternative NET is available.
- Different device operating scenarios dictate different roaming strategies, discussed below.
- An idle device monitors SYNC and HELLO messages from the Control Point device to maintain NET connectivity.
- Type 2 devices do not employ power management, and always maintain their receivers in an active state. They monitor all SYNC messages.
- Type 1 and Type 3 devices typically employ power management, operating in standby or sleep modes of operation for many Access Intervals before activating their receivers for monitoring SYNC and HELLO messages.
- Control Points are guaranteed to send Priority SYNC frames every third Access Interval.
- HELLOs occur every 30th Priority SYNC frame.
- Power managed devices employ sleep algorithms synchronized to wake for the minimum period necessary to guarantee receipt of priority SYNC, HELLO, and Pending Message transmissions before resuming SLEEP.
- Type 2 devices are typically operated from high capacity vehicular power systems, eliminating the need for power management. These devices may travel at velocities near the maximum system design specification, dictating more frequent roaming. Type 2 devices will initiate a search for an alternative NET if SYNC messages are consistently received at signal strengths below a Roaming Threshold or if reception errors are consistently detected. Because of the effects of frequency selective fading, signal strength information is averaged over the course of several hops within the hopping sequence.
- the device initiates a Roaming Algorithm, using Neighbors' information from the most recent HELLO to attempt synchronization with another candidate NET. If SYNC is not detected within 6 hops, another candidate from the Neighbors list will be selected, and the process repeated. Once SYNC is attained on an alternative NET, the device will monitor signal strength and data errors for several hops to determine link quality. If link quality is acceptable, the device will continue monitoring until a HELLO is received. If COST is acceptable, it will then register with the new NET. The Control Point device will update the spanning tree over the wired backbone (or by RF if a wireless base). If link quality or COST is unacceptable, another candidate from the Neighbors list is selected and the process repeated. This continues until an acceptable connection is established. If a connection cannot be established, the device must return to the original NET or employ the initial acquisition algorithm.
- Type 2 devices also have the option of monitoring other NETs before degradation of their NET connection. They may do so by monitoring their own NET for the SYNC and pending message list transmissions, then scanning other candidate NETs during the Sessions period of their NET. Other type devices may do so less frequently.
- Type 1 and Type 3 devices may sleep extensively when idle, preferably activating every nine Access Intervals to resynchronize and check pending messages. Successful reception of at least one SYNC during three monitoring periods is necessary to maintain fine synchronization to the NET clock. Failure to receive two of three SYNC frames, or receipt of two or three SYNC messages with poor signal strength are possible indications of the need to further test link quality by remaining active for several consecutive SYNC transmissions. If signal strength or data errors over several hops indicates that link quality is poor, or if a received HELLO message indicates high COST, the roaming algorithm is initiated, and alternative NETs are evaluated, as in the case of Type 2 devices.
- Some battery powered devices may sleep for periods of time more than nine Access Intervals. For example, devices with extremely limited battery capacity may sleep between HELLOs, or several HELLO periods, after which they must remain active for several consecutive Access Intervals to regain fine synchronization and assess whether to initiate roaming.
- Outbound messages for devices that have changed coverage areas, but which have not yet registered with a new Control Point device, are problematic. For example, in the premises LAN, messages will be forwarded to the access point that the device had previously been attached to. The access point may attempt to poll the device during one or more Access Intervals, then transmit the unit address in the pending message list periodically for several seconds before disregarding it. Once the unit attaches to a base, the message must be transferred from the previous access point for delivery to the unit. All of these activities require transmission bandwidth on either the backbone or RF media, waste processing resources within the premise LAN, and result in delayed delivery.
- the network has no means of distinguishing messages it cannot deliver due to roaming from messages that should be retried due to signal propagation characteristics, interference, or sleeping devices.
- the roaming algorithm may be designed to allow devices to quickly detect that they have lost connectivity within their current NET, and re-attach to a more favorably located access point.
- Some improvement in delivering pending messages to roaming terminals can be obtained by routinely propagating pending message lists over the wired backbone.
- that base is able to immediately ascertain that the device has a pending message, and initiate forwarding of the message for delivery to the device.
- All devices within the NET may have one or more hopping tables that contain potential hopping sequences that may be used. Up to 64 sequences may be stored in each device. Each sequence has an identifier, and each frequency in each sequence has an index. The sequence identifier and index are communicated in the SYNC transmission.
- All SYNC transmissions may be block encrypted to prevent unauthorized devices from readily acquiring hopping synchronization information.
- the encryption key may initially be factory set to a universal value in all devices. Users would then have the option of changing this key, by providing a new key to each device in the system. This may be accomplished through keyboard entry or other secure means. Keys may also be changed through the NET.
- the simplest method for attaining synchronization is to Camp—select a quiet frequency that is likely to be within a sequence in use—and listen for valid synchronization information. If a SYNC message is detected, the listening device immediately has both coarse and fine synchronization, and can begin the registration process.
- the device has acquired coarse synchronization.
- the particulars of the hopping sequence are known, but the boundaries of the dwells are not.
- To acquire fine synchronization it begins hopping at the indicated hopping rate, listening for SYNC. If SYNC is not detected after a reasonable number of hops, preferably 12 or 15, the device reverts to camping.
- a SYNC transmission is guaranteed to occur every frequency over 2 cycles of the hopping sequence. Six cycles are required for 99.5% probability of acquisition, corresponding to 19 seconds at 25 hops per second.
- a device that uses an acquisition algorithm suitable for 2 or 4 Access Intervals per hop will also acquire a NET that hops at 1 Access Interval per hop.
- the algorithm may be as follows:
- the device When the next SYNC is received, the device synchronizes its clock to the NET clock and initiates registration. If SYNC is not received within a dwell time, the device hops to the next frequency in sequence. This continues until SYNC is attained, or until 15 hops have passed without receiving SYNC, after which the acquisition sequence is restarted.
- camp provides a worst case acquisition performance that is perceptibly slow to the human user of a portable device.
- the preferred approach has the receiver scan all potential frequencies in ascending order, at 125 ⁇ sec increments. When the highest frequency is reached, the search begins again at the lowest frequency.
- the 125 ⁇ s sampling rate is much faster than the 250 ⁇ sec channel switching time specification of the RF modem. This is possible because the overall switching time specification applies to worst case frequency switching intervals, i.e., from the highest to the lowest operating frequency.
- switching may be maintained over frequency intervals very near a synthesizer phase detectors' phase lock range, allowing nearly instantaneous frequency switching.
- the change from highest to lowest frequency at the end of the scan requires the standard 250 ⁇ sec.
- the receiver remains on frequency for a Reservation Opportunity and initiates channel access through the procedure described above.
- the scanning approach is less deterministic in terms of acquisition probability than camping, but the search time required for 99.5% acquisition probability is about 80 Access Intervals, or three times faster than that for camping.
- All devices are required to have unique 48 bit global addresses. Local 16 bit addresses will be assigned for reduced overhead in communications. Local addresses will not be assigned to devices whose global addresses are not on an authentication list maintained in each access point and routinely updated over the infrastructure.
- a device Once a device has attained synchronization, it must register with the control point to be connected with the NET. It initiates this by sending a Request for Poll indicating a registration request, and including its global address.
- the control point will register the device, and provide a short Network Address as an outbound message.
- the Control point will generate the short address if it is a single NET, or exchange the global address for a short Network Address with a Network Address Server if the NET is part of a larger infrastructured network of a premises LAN.
- the SYNC message contains a character designated as the SYNC character that transfers the NET clock synchronization. This may be the beginning or ending FLAG in the SYNC message, or a specific character within the message.
- the maximum expected frequency error between NET and device local clocks is 100 parts per million.
- the local device clock must be re-synchronized at 500 ms intervals.
- a non-sleeping device has up to 26 SYNC opportunities within that period in which to re-synchronize and maintain required accuracy.
- sleeping terminal in this instance may refer to a device that powers down its radio communication hardware to save power while maintaining other functions in an operational state, or a device that power manages those functions as well. In the power managed state, the device must maintain its hop clock so that full acquisition is not required every time power management is invoked.
- Priority SYNC Messages to maintain synchronization.
- Priority SYNC Messages occur every three Access Intervals. In times of low NET activity, non-priority SYNC messages are omitted.
- power managed devices can be guaranteed to wake up for Access Intervals where SYNCs will be present, even if the NET activity is low during the sleep period.
- a sleeping device with no transmission requirements may sleep for eight 20 ms access intervals, and wake only for the SYNC and Reservation Poll at the beginning of the ninth Access Interval to monitor pending messages before returning to the sleep state, for a duty cycle of less than 5%. This provides three opportunities to synchronize to the NET clock within a 540 ms window.
- a flow chart depicting a device sleeping for several access intervals is shown in FIG. 17 .
- Devices may also sleep for longer periods of time, at the risk of losing fine synchronization. They may compensate by advancing their local clocks to account for the maximum timing uncertainty. For example, a terminal could sleep for 5 seconds without re-synchronizing by waking up 500 microseconds before it expects an Access Interval to begin, and successfully receive SYNC messages. This technique is valid for extended periods of time, up to the point where the maximum timing error approaches 50% of an Access Interval.
- a flow chart depicting a device sleeping for several seconds is shown in FIG. 18 .
- a power managed device that requires communication during a sleep period may immediately wake and attempt access to the NET at the next available Reservation Opportunity.
- a spontaneous wireless local area network or spontaneous LAN is one that is established for a limited time for a specific purpose, and which does not use the premises LAN to facilitate communications between devices or provide access to outside resources.
- Use of spontaneous LAN allows portable devices to share information, files, data, etc., in environments where communication via the premises LAN is not economically justifiable or physically possible.
- a spontaneous LAN capability also allows portable/mobile devices to have an equally portable network. Peripheral and vehicular LANs are examples of such spontaneous LANs.
- Requirements for spontaneous LAN differ from an infrastructured premises LAN in several significant areas.
- the number of devices in a spontaneous LAN is likely to be smaller than the number that a single NET in a premises LAN must be capable of supporting.
- coverage areas for spontaneous LANs are typically smaller than coverage areas for an access point participating in the premises LAN.
- communication often takes place over relatively short distances, where devices are within line of sight of each other.
- the majority of communications are likely to involve accessing communication network resources.
- portable devices with limited processing capabilities, memory, and power supplies are able to access large databases or powerful computing engines connected to the AC power grid.
- Access points within the premises LAN are well suited to the role of Control Points for managing synchronization and media access within each NET.
- control point architecture dictates that transmissions intended for devices other than the control point be stored and forwarded to the destination device, further increasing battery drain, and reducing system throughput.
- the use of scheduled transmission in a premises LAN is likely to differ from use in a spontaneous LAN.
- applications such as massaging and two way (i.e., full-duplex) voice communications may only occasionally be used, whereas video transmission and telemetry exchange may be prevalent.
- selecting relatively close frequency bands for each LAN assists the design of a multiple LAN-transceiver, reducing circuitry, cost, power, weight and size while increasing reliability.
- selecting communication protocols so that the spontaneous LAN protocol constitutes a subset or superset of premises LAN may enable a given device to more effectively communication in both LANs, while minimizing both the overall protocol complexity and potentially limited memory and processing power.
- frequency hopping is desirable in premises LAN because of its ability to mitigate the effects of interference and frequency selective fading. In the case of the latter, frequency hopping allows systems to be installed with less fade margin than single frequency systems with otherwise identical radio modem characteristics, providing improved coverage.
- the potentially smaller coverage area requirement of spontaneous LANs allows single frequency operation to be considered for some applications, e.g., such as a peripheral LAN.
- Regulatory structures are in place in some countries to allow single frequency operation in the same bands as frequency hopping systems, providing that single frequency devices operate at reduced power levels.
- the lower transmit power of single frequency operation and elimination of periodic channel switching are desirable methods of reducing battery drain.
- the choice of single frequency or frequency hopped operation is dictated by the coverage requirements of the network, and may be left as an option to device users.
- a spontaneous LAN comes into existence when two or more devices establish communications, and ceases when its population falls to less than two. Before a spontaneous LAN can be established, at least two devices must agree upon a set of operating parameters for the network. Such agreement may be preprogrammed else exchanged and acknowledged prior to establishing the spontaneous LAN. Once the spontaneous LAN is established, other devices coming into the network must be able to obtain the operating parameters and acquire access.
- a computing device To establish a spontaneous LAN, a computing device must first identify at least one other network device with which spontaneous LAN communication is desired. To identify another network device, the computing device may play an active or passive role. In an active role, the computing device periodically broadcasts a request to form spontaneous LAN with either a specific network device or, more likely, a specific type of network device. If a network device fitting the description of the request happens to be in range or happens into range and is available, it responds to the periodic requests to bind with the computing device, establishing the spontaneous LAN. Alternately, the network device may take a passive role in establishing the spontaneous LAN. In a passive role, the computing device merely listens for a request to form a spontaneous LAN transmitted by the appropriate network device. Once such a network device comes into range, the computing device responds to bind with the network device, establishing the spontaneous LAN.
- a device should take a passive or active role is a matter of design choice. For example, in one embodiment where peripheral devices have access to AC power, the roaming computer terminals take a passive role, while the peripheral devices take a more active role. Similarly, in another embodiment where a vehicle terminal has access to a relatively larger battery source, an active role is taken when attempting to form a spontaneous LAN, i.e., a vehicular LAN, with a hand-held computing device.
- a spontaneous LAN i.e., a vehicular LAN
- Binding a process carried out pursuant to a binding protocol stored in each network device, may constitute a very simple process such as might exist when creating a spontaneous LANs that operates on a single frequency channel. Under such a scenario, a simple acknowledge handshake between the computing terminal and the other network device may be sufficient to establish a spontaneous LAN pursuant to commonly stored, preprogrammed operating parameters.
- more complex binding schemes may also be implemented so as to support correspondingly more complex spontaneous LANs as proves necessary. An example of a more complex binding scheme is described below.
- One device it is desirable in some large spontaneous LANs for one device to be designated as a fully functional control point, providing identical NET operation to a single NET in the premises LAN. Providing that all devices share a hopping table and encryption key, the designated device would initiate control point activities, and other devices would synchronize to the designated unit.
- a device with greater battery capacity, or one that can be temporarily connected to AC power is best suited to the dedicated control point function.
- This architecture is applicable to Client-Server applications (where the server assumes the control point function), or to other applications where a single device is the predominant source or destination of communications.
- a portable device used as a dedicated control point is required to have additional programming and memory capacity to manage reservation based media access, pending message lists, and scheduled service slot allocations.
- Control Point function is either distributed among some or all the devices within the spontaneous LAN.
- the interleaved Access Interval approach used for wireless access points is employed. Initially, control point responsibilities are determined during the binding process. Users may designate or redesignate a Control Point device when several candidates are available.
- Control Point devices transmit SYNC, pending message lists, and Time Division Multiple Access slot reservations normally, but only use the single slot reservation Poll (Idle Sense Multiple Access).
- the reservation poll contains a field indicating reduced control point functionality. This places other devices in a point-to-point communication mode, using the Implicit Idle Sense Algorithm. The probability factor p communicated in the reservation poll is used for the Implicit Idle Sense algorithm.
- Control point devices may use the deferred SYNC mechanism for light system loading, transmitting Priority SYNC every third Access Interval to further decrease their transmission requirements. Control point devices must monitor the reservation slot for messages addressed to them, but may sleep afterwards.
- Implicit Idle Sense use point-to-point addressing, indicating the address of the destination device directly, rather than the control point device. This eliminates the need for the Control Point device to store and forward transmissions within the spontaneous LAN.
- the device detecting its address in a Request for Poll begins a session, after employing the Implicit Idle Sense algorithm, by Polling the source address identified in the Request for Poll.
- the terminating ACK and CLEAR messages contain an Explicit Idle Sense probability factor equal to that in the original reservation poll.
- the Control Point device maintains a pending message list. Devices that have been unable to establish communication with a sleeping device initiate a session with the Control Point device to register the pending message. Upon becoming active, the sleeping device will initiate a Poll to the device originating the pending message. The Control Point device will eliminate the pending message indication by aging, or by receipt of communication from the destination device clearing the pending message. Control point devices are not required to store pending messages, only addresses.
- HELLO messages are broadcast to indicate changes in NET parameters. HELLO messages may be omitted to simplify the Control Point function in spontaneous LANs.
- Devices are assigned local addresses upon registration with the Control Point device. Devices may communicate an alias that identifies the device user to other users to the Control Point device where it is stored in an address table. The address table may be obtained by other network constituents by querying the Control Point device.
- a peripheral LAN is a type of spontaneous LAN which serves as a short range interconnect between a portable or mobile computing device (MCD) and peripheral devices.
- peripheral devices including printers, measurement and data acquisition units, optical scanners, etc.
- peripherals When cabled or otherwise physically connected to a portable product, these peripherals often encumber the user, preventing freedom of movement or mobility. This becomes more problematic when use of more than one peripheral is required.
- a communication dock is a device that holsters or houses a portable unit, and provides for communication interconnection for such tasks as program downloading, data uploading, or communication with large printers, such as those used for printing full sized invoices in vehicular applications.
- Communication docking of a portable unit may also involve power supply sharing and/or charging.
- Peripheral devices are generally attached with cable. If a peripheral is small enough to be carried or worn on a belt, the mobility of the user may be maintained. If a user must carry a hand-held portable device that is connected to a belt mounted peripheral, the assembly cannot be set down while a task that requires movement to a location several feet away is undertaken unless the portable device and peripheral are disconnected. Likewise, connection to peripherals too large to be portable requires the user to frequently connect and disconnect the device and the peripheral.
- wireless peripheral LAN interconnection greatly simplifies the task of portable devices communicating with peripherals.
- wireless connectivity allows improved ergonomics in portable product design, flexibility in interconnection to one or more peripherals, freedom of movement over a radius of operation, forward and backward compatibility between portable units and peripherals, and potential communications among products manufactured by different vendors.
- Constituents within a peripheral LAN generally number six or fewer devices.
- One roaming computing device and one or two peripherals comprise a typical configuration. Operating range is typically less than fifty feet.
- a master/slave type protocol is appropriate.
- roaming computing devices serving as master are well suited to the role of Control Points for managing synchronization and media access within each peripheral LAN. All peripheral communications are slaved to the master.
- roaming mobile or portable computing devices and wireless peripherals may all operate from battery power. Operating cycles between charging dictate use of power management techniques.
- peripheral LAN Although all participants in a peripheral LAN might also be configured to directly participate in the premises LAN, the tradeoff in cost, power usage and added complexity often weighs against such configuration. Even so, participants within a peripheral LAN can be expected to function in a hierarchical manner, through a multiple participating device, with the premises LAN. Thus, the use of a much simpler, lower-power transceiver and associated protocol may be used in the peripheral LAN.
- radio communication on the premises LAN takes place using radio transceivers capable of performing frequency-hopping.
- such transceivers could also utilize frequency-hopping at a lower power.
- such transceivers are relatively expensive in comparison to a lower power, narrow-band, single frequency transceivers. Because of the cost differential, it proves desirable to use the single frequency transceivers for all peripheral devices which will not participate in the premises LAN. Therefore, the more expensive, frequency-hopping transceivers which are fitted into roaming computing devices are further designed to stop hopping and lock into the frequency of the single frequency transceiver, allowing the establishment of peripheral LANs.
- the peripheral LAN may also use narrow-band, single frequency communication, further simplifying the radio transceiver design for commonality.
- operation using one of a plurality of single frequency channels is provided.
- the transceiver might select from the remaining of the plurality an alternate, single operating frequency with lesser channel interference.
- the peripheral LAN transceivers may either communicate an upcoming frequency change so that corresponding peripheral LAN participants can also change frequency, or the transceivers may be configured to use frequency synthesis techniques to determine which of the plurality a current transmission happens to be.
- the Access Interval structure is also an appropriate choice for peripheral LAN operations.
- the Access Interval for the peripheral LAN is a subset of the Access Interval used in the premises LAN.
- HELLO messages, Implicit Idle Sense, Data Rate Switching, and scheduled services are not implemented.
- Peripheral devices normally sleep, activate their receivers for SYNC transmissions from the participating master device, and resume sleeping if no pending messages are indicated and they have no inbound transmission requirements. Access Intervals occur at regular intervals, allowing for power management. Access Intervals may be skipped if the master has other priority tasks to complete.
- a device desiring initialization selects a single operating frequency by scanning the available frequencies for one with no activity.
- a typical master device might be a roaming computing device desiring access to a local peripheral.
- Default values for other parameters, including Access Interval duration, are contained within each participant's memory. Such parameters may be preadjusted in each participant to yield specific performance characteristics in the peripheral LAN.
- a master device identifies a single frequency
- slaves which are generally peripherals
- Binding is initiated by the master device by invoking a binding program contained therein.
- Slaves such as peripherals, are generally programmed to enter a receptive state when idle.
- the master device accomplishes binding by transmitting Access Intervals of known duration sequentially on a series of four frequencies spread throughout the available frequency range. The specific frequencies and Access Interval durations used are stored as parameters in all potential participating devices.
- a 250 KBPS transfer rate is appropriate in some embodiments of the peripheral LAN, reflecting a balance between performance and complexity in peripheral devices.
- a slave e.g., a peripheral, responds to the binding attempts by the master device on a given frequency until the slave successfully receives and establishes communication with the master device. If they do not establish communication after four Access Intervals, the slave switches to the next frequency for four Access Interval periods. Once communication is established, the slave registers with the master and obtains the master device's selected operating frequency and related communication parameters. When all slave devices have been bound, the master terminates the binding program and normal operation at the selected single frequency may begin.
- peripheral LAN masters use a secondary access interval 1501 that is synchronized to the Access Interval of a parent (premises) LAN control point.
- Peripheral LAN Access Intervals occur less frequently than premises LAN Access Intervals, e.g., every other or every third Priority SYNC Access Interval.
- the peripheral LAN master device monitors the premises LAN control point for SYNC 1503 reservation poll 1505 and exchanges inbound and outbound message according to the normal rules of the access protocol.
- the master switches to the peripheral LAN frequency, and transmits its own SYNC frame 1507 during the session period 1509 of its parent control point allowing communication with its peripherals.
- the peripheral LAN Access Interval is generally shorter than the premises LAN Access Interval, so that it does not extend beyond the premises LAN Access Interval boundary.
- the master switches to the premises LAN frequency for the next SYNC 1503 .
- the secondary SYNC 1507 may only be transmitted if the peripheral LAN master is not busy communicating through the premises LAN. If a communication session is occurring, the master must defer SYNC, preventing communication with its peripherals during that Access Interval. The master must also defer SYNC if the current frequency in the LAN is prone to interference from the peripheral LAN frequency, i.e., they are the same frequency or adjacent frequencies. If two consecutive SYNCs are deferred, peripherals will activate their receivers continuously for a period of time, allowing the master to transmit during any Access Interval. This approach is also applicable when the master roams between frequency hopping NETs. Since NETs are not synchronized to one another, the devices in the peripheral LAN adjust Access Interval boundaries each time the master roams. If peripherals do not detect SYNC within a timeout period, they may duty cycle their reception to conserve battery power.
- a Roaming Algorithm Flow Diagram illustrates how a roaming computing device will select a suitable access point.
- Roaming computing devices operating in the infrastructured network environment formed by the access points will routinely move between access point coverage areas.
- the roaming computing devices are able to disconnect from their current access point communication link and reconnect a communication link to a different access point, as necessitated by device roaming.
- Access points transmit HELLO messages to devices in their coverage area. These HELLO messages communicate to roaming computing devices the cost of connection through the access point, addresses of neighboring access points, and the cost of connection through these neighboring access points. This information allows roaming computing devices to determine the lowest cost connection available and to connect to the access point with the lowest cost.
- access point HELLO message may include communication parameters of neighboring access points, such as frequency hopping sequences and indices, spread spectrum spreading codes, or FM carrier channel frequencies. This information allows roaming computing devices to roam and change access point connections without going through a full acquisition phase of the new access point's parameters.
- the cost is acceptable, it will register with the new access point, and the access point will update the spanning tree over the infrastructure. If link quality or cost is unacceptable, another candidate from the neighbors list is selected and the process repeated. This continues until an acceptable connection is established. If one cannot be established, the device must return to the original access point connection or employ the initial acquisition algorithm.
- FIG. 28 a illustrates an embodiment of the hierarchical communication system according to the present invention communication is maintained in a warehouse environment.
- a worker utilizes a roaming computing device, a computer terminal 3007 , and a code reader 3009 to collect data such as identifying numbers or codes on warehoused goods, such as the box 3010 .
- the numbers and codes are collected, they are forwarded through the network to a host computer 3011 for storage and cross-referencing.
- the host computer 3011 may, for example, forward cross-referenced information relating to the collected numbers or codes back through the network for display on the terminal 3007 or for printing on a printer 3013 .
- the host computer 3011 can be configured as a file server to perform such functions.
- the collected information may be printed from the computer terminal 3007 directly on the printer 3013 .
- Other exemplary communication pathways supported include message exchanges between the computer terminal 3007 and other computer terminals (not shown) or the host computer 3011 .
- the host computer 3011 provides the terminal 3007 with remote database storage, access and processing. However, the terminal 3007 also provides for local processing within its architecture to minimize the need to access the remote host computer 3011 . For example, the terminal 3007 may store a local database for local processing. Similarly, the terminal 3007 may run a variety of application programs which never, occasionally or often need access to the remote host computer 3011 .
- the hand-held computer terminal 3007 receives its power from either an enclosed battery or a forklift battery (not shown) via a communication dock within the forklift 3014 .
- the code reader 3009 operates on portable battery power as may the printer 3013 .
- the arrangement of the communication network, communication protocols used, and data rate and power level adjustments help to optimize battery conservation without substantially degrading network performance.
- the access points 3015 and 3017 contain a relatively higher power transmitter, and provide coverage over the entire warehouse floor. Although a single access point may be sufficient, if the warehouse is too large or contains interfering physical barriers, the multi-hop plurality of access points 3017 may be desirable. Otherwise, the backbone LAN 3019 must be extended to connect all of the access points 3017 directly to provide sufficient radio coverage. Through the premises LAN, relatively stable, longer range wireless and hardwired communication is maintained.
- roaming computing devices such as the hand-held computer terminal 3007
- they are fitted with RF transceivers.
- the fitted transceiver is selected to yield approximately the same transmission power as do the access points 3015 and 3017 .
- not all roaming network devices require a direct RF link to the access points 3015 and 3017 , and some may not require any link at all. Instead, with such devices, communication exchange is generally localized to a small area and, as such, only requires the use of relatively lower power, short range transceivers.
- the devices which participate in such localized, shorter range communication form spontaneous LANs.
- the terminal 3007 Upon receipt of the related information, the terminal 3007 determines that printing is desired with the printer 3013 located at the dock. When the forklift 3014 enters the vicinity of the dock, the terminal 3007 establishes a peripheral LAN with the printer 3013 which begins printing the collected code information.
- the printer 3013 and code reader 3009 are fitted with a lower power peripheral LAN transceivers for short range communication.
- the computer terminal 3007 transceiver is not only capable of peripheral LAN communication, but also with the capability of maintaining premises LAN communication.
- the code reader 3009 might be configured to participate on both LANs, so that the code reader 3009 participates in the premises LAN to request associated code information from the host computer 3011 .
- either the code reader 3009 or terminal 3007 could act as the control point of the peripheral LAN. Alternately, both could share the task.
- the code reader 3009 With capability to participate in the peripheral LAN only, the code reader 3009 , or any other peripheral LAN participant, might still gain access to the premises LAN indirectly through the terminal 3007 acting as a relaying device. For example, to reach the host computer 3011 , the code reader 3009 first transmits to the computer terminal 3007 via the peripheral LAN. Upon receipt, the computer terminal 3007 relays the transmission to one of the access points 3015 and 3017 for forwarding to the host 3011 . Communication from the host 3011 to the code reader 3009 is accomplished via the same pathway.
- any two devices with no access to the premises LAN could communicate to each other.
- the modem 3023 could receive data and directly transmit it for printing to the printer 3013 via a peripheral LAN established between the two.
- the code reader 3009 might choose to directly communicate code signals through a peripheral LAN to other network devices via the modem 3023 .
- a peripheral LAN access point 3021 is provided which may be directly connected to the backbone LAN 3019 (as shown), acting as a direct access point to the backbone LAN 3019 , or indirectly connected via the access points 3015 and 3017 .
- the peripheral LAN access point 3021 is positioned in the vicinity of other peripheral LAN devices and thereafter becomes a control point participant.
- peripheral LAN communication flowing to or from the premises LAN avoids high power radio transmissions altogether.
- a stationary peripheral LAN access point may not always be an option when all of the peripheral LAN participants are mobile. In such cases, a high power transmission to reach the premises LAN may be required.
- FIG. 28 b illustrates other features of the present invention in the use of spontaneous LANs in association with a vehicle which illustrate the capability of automatically establishing a premises and a peripheral LAN when moving in and out of range to perform services and report on services rendered.
- a delivery truck 3033 provides a focal point for a spontaneous LAN utilization.
- a storage terminal 3031 is docked so as to draw power from the truck 3033 's battery supply.
- a computer terminal 3007 may either be docked or ported.
- the storage terminal 3031 need only be configured for multiple participation in the premises, peripheral and vehicular LANs and in a radio WAN, such as RAM Mobile Data, CDPD, MTEL, ARDIS, satellite communication, etc.
- the storage terminal 3031 although also capable of premises and peripheral LAN participation, need only be configured for vehicular LAN participation.
- the truck Prior to making a delivery, the truck enters a docking area for loading.
- the information regarding the goods is down-loaded into the storage terminal 3031 via the terminal 3007 or code reader 3009 ( FIG. 28 a ) via the premises or peripheral LAN communications.
- This loading might also be accomplished automatically as the forklift 3014 comes into range of the delivery truck 3033 , establishes or joins the peripheral LAN, and transmits the previously collected data as described above in relation to FIG. 28 a . Alternately, loading might also be accomplished via the premises LAN.
- the storage terminal 3031 might also request further information regarding any or all of the goods via the peripheral LAN's link to the host computer 3011 through the premises LAN. More likely however, the storage terminal 3031 if appropriately configured would participate on the premises LAN to communicate directly with the host computer 3011 to retrieve such information.
- the peripheral LAN access point 3021 if located on the dock could provide a direct low power peripheral LAN connection to the backbone LAN 3019 and to the host computer 3011 .
- the access point 3021 is located on the dock and comprises a low power (“short hop”) radio operating in a frequency hopping mode over a 902-928 MHz frequency band.
- the access point 3021 can instead be configured to communicate using, for example, infrared, UHF, 2.4 GHz or 902 MHz spread spectrum direct sequence frequencies.
- the storage device 3031 may generate a printout of the information relating to the loaded goods via a peripheral LAN established with the printer 3013 on the dock.
- the information may be transmitted via the peripheral LAN modem 3023 to a given destination site.
- the vehicular LAN can only gain access to the premises LAN via the more costly radio WAN communication.
- the storage terminal 3031 might only be configured with relaying control point functionality, to minimize radio WAN communication, the storage terminal 3031 can be configured to store relatively large amounts of information and to provide processing power.
- the terminal 3007 can access such information and processing power without having to access devices on the premises LAN via the radio WAN.
- the storage terminal 3031 may participate in any in range peripheral and premises LAN at the delivery site dock. Specifically, as specific goods are unloaded, they are scanned for delivery verification, preventing delivery of unwanted goods. The driver is also informed if goods that should have been delivered are still in the truck. As this process takes place, a report can also be generated via a peripheral or premises LAN printer at the destination dock for receipt signature. Similarly, the peripheral LAN modem on the destination dock can relay the delivery information back to the host computer 3011 for billing information or gather additional information needed, avoiding use of the radio WAN.
- the truck 3033 leaves the dock in the morning with the addresses and directions of the service destinations, technical manuals, and service notes which have been selectively downloaded from the host computer 3011 via either the premises or peripheral LAN to the storage terminal 3031 which may be configured with a hard drive and substantial processing power.
- the storage terminal 3031 and the computer terminal 3007 automatically form an independent, detached vehicular LAN.
- the terminals 3007 and 3031 may have previously formed the vehicular LAN before leaving dock.
- the vehicular LAN operates using frequency hopping protocol much the same as that of the premises LAN, with the storage terminal 3031 acting much like the premises LAN access points.
- the radio transceiver circuitry for the premises LAN participation may also be used for the vehicular LAN and, as detailed above, a peripheral LAN.
- the radio WAN chosen may to be incorporated into a single radio transceiver.
- the driver collects information using the terminal 3007 either as the data is collected, if within vehicular LAN transmission range of the storage terminal 3031 , or as soon as the terminal 3007 comes within range. Any stored information within storage terminal 3031 may be requested via the vehicular LAN by the hand-held terminal 3007 . Information not stored within the vehicular LAN may be communicated via a radio WAN as described above.
- the storage terminal 3031 upon returning to the dock, joins in or establishes a peripheral LAN with the peripheral LAN devices on the dock, if necessary. Communication is also established via the premises LAN. Thereafter, the storage terminal 3031 automatically transfers the service information to the host computer 3011 which uses the information for billing and in formulating service destinations for automatic downloading the next day.
- FIG. 29 a is a diagrammatic illustration of another embodiment using a peripheral LAN to supporting roaming data collection by an operator according to the present invention.
- an operator 3061 roams the warehouse floor, he carries a peripheral LAN comprising the terminal 3007 , code reader 3009 and a portable printer 3058 with him.
- the operator collects information regarding goods, such as the box 3010 , with the code reader 3009 and the terminal 3007 . If the power resources are equal, the terminal 3007 may be configured and designated to also participate in the premises LAN.
- Corresponding information to the code data must be retrieved from the host computer 3011 .
- the collected code information and retrieved corresponding information can be displayed on the terminal 3007 . After viewing for verification, the information can be printed on the printer 3058 . Because of this data flow requirement, the computer terminal 3007 is selected as the peripheral LAN device which must also carry the responsibility of communicating with the premises LAN.
- the peripheral LAN becomes detached from the premises LAN.
- the detached peripheral LAN may roam in relation to a device attached to the premises LAN (“premises LAN device”).
- the premises LAN device may roam in relation to the peripheral LAN. The roaming constitutes a relative positioning.
- the peripheral LAN may either poll for or scan for another master device for attachment.
- the master device may constitute a premises LAN device, yet need not be.
- the code reader 3009 may be designated as a backup to the terminal 3007 for performing the higher power communication with the premises LAN. As described in more detail below in reference to FIG. 33 c regarding the idle sense protocol, whenever the code reader 3009 determines that the terminal 3007 has stopped providing access to the premises LAN, the code reader 3009 will take over the role if it is next in line to perform the backup service. Thereafter, when the computer terminal 3007 is powered up, it monitors the peripheral LAN channel, requests and regains from the code reader 3009 the role of providing an interface with the premises LAN. This, however, does not restrict the code reader 3009 from accessing the premises LAN although the reader 3009 may choose to use the computer terminal 3007 for power conservation reasons.
- the terminal 3007 will attempt to pass the burden of providing premises LAN access to other peripheral LAN backup devices. If no backup device exists in the current peripheral LAN, the computer terminal 3007 may refuse all high power transmissions to the premises LAN. Alternatively, the computer terminal 3007 may either refuse predetermined select types of requests, or prompt the operator before performing any transmission to the premises LAN. However, the computer terminal 3007 may still listen to the communications from the premises LAN and inform peripheral LAN members of waiting messages.
- FIG. 29 b is a diagrammatic illustration of another embodiment of a peripheral LAN which supports roaming data collection by an operator according to the present invention.
- An operator is equipped with a peripheral LAN 3065 comprising a housing 3067 , which incorporates a printer 3069 and a dock 3071 , a roaming computing terminal 3073 , and a code reader 3075 .
- the operator may roam a warehouse floor or a shipping dock and collect and retrieve data using the peripheral LAN 3065 as discussed above with respect to FIG. 29 a .
- the operator may elect to leave the housing 3067 , and hence the printer, in one area of the warehouse, or on the truck, and carry only the code reader 3075 and terminal 3073 .
- the operator may also elect to dock the terminal 3073 in the dock 3071 and carry only the code reader 3075 .
- the terminal is capable of communicating data to the printer 3069 via RF signals or via the dock 3071 .
- the housing 3067 may optionally include a cigarette lighter power input cable 3077 to power the printer 3069 , and recharge the battery of the terminal 3073 via the dock 3071 .
- the housing 3067 may also optionally include a wide area network radio to permit communication with a remote warehouse or station 3079 .
- the housing 3067 may also be configured to include the functionality of the storage terminal 3031 discussed above with respect to FIGS. 28 b and 28 c.
- the peripheral LAN embodiments of FIGS. 29 a and 29 b may, of course, function when detached from the premises LAN. This feature is particularly desirable in situations where attachment to the premises LAN may be more costly, such as, for example, during the remote pickup or delivery of goods by a driver.
- the driver may, for example, use the code reader and terminal to collect and/or enter information regarding the goods, such as their origin, destination, weight, etc.
- the terminal may then encode the information, and transmit it to the printer so that the driver can label each box appropriately with a bar or other type of code for later identification and routing of the goods.
- the driver may download the stored data using the WAN radio to the premises LAN host computer at the remote warehouse or station 3079 so that the information may be used to pre-schedule further routing of the goods before the driver even arrives.
- the information may instead be automatically transferred wirelessly to the premises LAN host once the driver comes into range of the premises LAN, as discussed above with respect to FIG. 28 b .
- the information may be downloaded from the terminal to the premises LAN host via a docking system 3081 located at the warehouse or station 3079 .
- the docking system 3081 may also be used to recharge the terminals 3073 .
- the host computer can download the data via RF or the docking system 3081 to any number of terminals 3073 used by warehouse personnel who unload the trucks. While unloading, these personnel can, for example, use a terminal 3073 and a code reader 3075 to build containers for further distribution of the goods to various destinations. Specifically, as a container is unloaded, the label previously placed on the container by the driver is scanned by the code reader 3075 , and destination information is displayed on the terminal 3073 . The box may then be taken to and loaded into the container headed for the same destination. Each container may also have a label which can be scanned to verify the destination of that particular container.
- FIG. 30 is a block diagram illustrating the functionality of RF transceivers built in accordance with the present invention.
- the transceiver 3110 may also be built-in or externally attached via available serial, parallel or ethernet connectors for example.
- the transceivers used by potential peripheral LAN master devices may vary from those used by peripheral LAN slave devices (as detailed below), they all contain the illustrated functional blocks.
- the transceiver 3110 contains a radio unit 3112 which attaches to an attached antenna 3113 .
- the radio unit 3112 used in peripheral LAN slave devices need only provide reliable low power transmissions, and are designed to conserve cost, weight and size.
- Potential peripheral LAN master devices not only require the ability to communicate with peripheral LAN slave devices, but also require higher power radios to also communicate with the premises LAN.
- potential peripheral LAN master devices and other non-peripheral LAN slave devices might contain two radio units 3112 or two transceivers 3110 —one serving the premises LAN and the other serving the peripheral LAN—else only contain a single radio unit to service both networks.
- a dual radio unit configuration for potential peripheral LAN master devices may provide several advantages. For example, simultaneous transceiver operation is possible by choosing a different operating band for each radio.
- a 2.4 GHz radio is included for premises LAN communication while a 27 MHz radio supports the peripheral LAN.
- Peripheral LAN slave devices receive only the 27 MHz radio, while the non-potential peripheral LAN participants from the premises LAN are fitted with only the 2.4 GHz radios.
- Potential peripheral LAN master devices receive both radios.
- the low power 27 MHz peripheral LAN radio is capable of reliably transferring information at a range of approximately 40 to 100 feet asynchronously at 19.2 KBPS.
- the 27 MHz frequency is an unlicensed frequency band.
- the 2.4 GHz radio provides sufficient power (up to 1 Watt) to communicate with other premises LAN devices.
- Another benefit of choosing 2.4 GHz or 27 MHz bands is that neither requires FCC licensing.
- Many different frequency choices could also be made such as the 900 MHz band, UHF, etc.
- infrared communication may be used in situations where line of sight may be achieved between devices on the network.
- a single radio unit configuration is used for potential peripheral LAN master devices.
- a dual mode 2.4 GHz radio supports both the peripheral LAN and premises LANs.
- the 2.4 GHz radio operates at a single frequency, low power level (sub-milliwatt) to support peripheral LAN communication at relatively close distances 20-30 feet).
- the 2.4 GHz radio provides for frequency-hopping communication over relatively long distance communication connectivity with the premises LAN.
- all network devices might be fitted with such a dual mode radio, only peripheral LAN master devices use both modes.
- Peripheral LAN slave devices would only use the low power mode while all other premises LAN devices would use only the high power mode. Because of this, to save cost, peripheral LAN slave devices are fitted with a single mode radio operating in the peripheral LAN mode. Non-peripheral LAN participants are also fitted with a single mode (main mode) radio unit for cost savings.
- a microprocessor 3120 controls the information flow between through the transceiver 3110 .
- the interface 3115 connects the transceiver 3110 to a selected computer terminal, a peripheral device or other network device.
- Many different interfaces 3115 are used and the choice will depend upon the connection port of the device to which the transceiver 3110 will be attached. Virtually any type of interface 3110 could be adapted for use with the transceiver 3110 of the present invention.
- Common industry interface standards include RS-232, RS-422, RS-485, 10BASE2 Ethernet, 10BASE5 Ethernet, 10BASE-T Ethernet, fiber optics, IBM 4/16 Token Ring, V.11, V.24, V.35, Apple Localtalk and telephone interfaces.
- the microprocessor 3120 maintains a radio independent, interface protocol with the attached network device, isolating the attached device from the variations in radios being used.
- the microprocessor 3120 also controls the radio unit 3112 to accommodate communication with the premises LAN, the peripheral LAN, or both (for dual mode radios). Moreover, the same radio might also be used for vehicular LAN and radio WAN communication as described above. For example, a radio located in a vehicle or in a hand held terminal can be configured to communicate not only within a local network, but might also be capable of receiving paging messages.
- the microprocessor 3120 utilizes a premises LAN protocol to communicate with the premises LAN.
- the microprocessor 3120 operates pursuant to a peripheral LAN protocol to communicate in the peripheral LAN.
- the microprocessor 3120 manages the use of and potential conflicts between both the premises and peripheral LAN protocols. Detail regarding the premises and peripheral LAN protocols can be found in reference to FIGS. 33-36 below.
- the microprocessor 3120 controls the power consumption of the radio 3112 , itself and the interface 3115 for power conservation. This is accomplished in two ways. First, the peripheral LAN and premises protocols are designed to provide for a low power mode or sleep mode during periods when no communication involving the subject transmitter is desired as described below in relation to FIGS. 33-34 . Second, both protocols are designed to adapt in both data rate and transmission power based on power supply (i.e., battery) parameters and range information as described in reference to FIGS. 35-36 .
- power supply i.e., battery
- each device is assigned a unique address.
- the transceiver 3110 can either have a unique address of its own or can use the unique address of the device to which it is attached.
- the unique address of the transceiver can either be one selected by the operator or system designer or one which is permanently assigned at the factory such as an IEEE address.
- the address 3121 of the particular transceiver 3110 is stored with the microprocessor 3120 .
- the peripheral LAN master device is shown as being either a peripheral LAN access point or a mobile or portable computer terminal. From a data flow viewpoint, in considering the fastest access through the network, such choices for the peripheral LAN master devices appear optimal. However, any peripheral LAN device might be assigned the role of the master, even those that do not seem to provide an optimal data flow pathway but may provide for optimal battery usage. For example, in the personal peripheral LAN of FIG. 29 a , because of the support from the belt 3059 , the printer might contain the greatest battery capacity of the personal peripheral LAN devices. As such, the printer might be designated the peripheral LAN master device and be fitted with either a dual mode radio or two radios as master devices require.
- the printer, or other peripheral LAN slave devices might also be fitted with such required radios to serve only as a peripheral LAN master backup. If the battery power on the actual peripheral LAN master, i.e., the hand-held terminal 3007 ( FIG. 29 a ) drops below a preset threshold, the backup master takes over.
- FIG. 31 is a drawing which illustrates an embodiment of the personal peripheral LAN shown in FIG. 29 a which designates a printer as the peripheral LAN master device.
- a computer terminal 3170 is strapped to the forearm of the operator.
- a code reader 3171 straps to the back of the hand of the user, and is triggered by pressing a button 3173 with the thumb. Because of their relatively low battery energy, the computer terminal 3170 and code reader 3171 are designated peripheral LAN slave devices and each contains a peripheral LAN transceiver having a broadcast range of two meters or less. Because of its greater battery energy, the printer 3172 contains a dual mode radio, and is designated the peripheral LAN master device.
- FIG. 32 is a block diagram illustrating a channel access algorithm used by peripheral LAN slave devices according to the present invention.
- a slave device when a slave device has a message to send, it waits for an idle sense message to be received from the peripheral LAN master device at a block 3183 .
- the slave device executes a back-off protocol at a block 3187 in an attempt to avoid collisions with other slave devices waiting to transmit. Basically, instead of permitting every slave device from repeatedly transmitting immediately after an idle sense message is received, each waiting slave is required to first wait for a pseudo-random time period before attempting a transmission. The pseudo-random back-off time period is generated and the waiting takes place at a block 3187 .
- the channel is sensed to determine whether it is clear for transmission. If not, a branch is made back to the block 3183 to attempt a transmission upon receipt of the next idle sense message. If the channel is still clear, at a block 3191 , a relatively small “request to send” type packet is transmitted indicating the desire to send a message. If no responsive “clear to send” type message is received from the master device, the slave device assumes that a collision occurred at a block 3193 and branches back to the block 3183 to try again. If the “clear to send” message is received, the slave device transmits the message at a block 3195 .
- FIG. 33 a is a timing diagram of the protocol used according to one embodiment the present invention illustrating a typical communication exchange between a peripheral LAN master device having virtually unlimited power resources and a peripheral LAN slave device.
- Time line 3201 represents communication activity by the peripheral LAN master device while time line 3203 represents the corresponding activity by the peripheral LAN slave device.
- the master periodically transmits an idle sense message 3205 indicating that it is available for communication or that it has data for transmission to a slave device. Because the master has virtually unlimited power resources, it “stays awake” for the entire time period 3207 between the idle sense messages 3205 . In other words, the master does not enter a power conserving mode during the time periods 3207 .
- the slave device uses a binding protocol (discussed below with regard to FIG. 33 c ) to synchronize to the master device so that the slave may enter a power conserving mode and still monitor the idle sense messages of the master to determine if the master requires servicing. For example, referring to FIG. 33 a , the slave device monitors an idle sense message of the master during a time period 3209 , determines that no servicing is required, and enters a power conserving mode during the time period 3211 . The slave then activates during a time period 3213 to monitor the next idle sense message of the master. Again, the slave determines that no servicing is required and enters a power conserving mode during a time period 3215 .
- a binding protocol discussed below with regard to FIG. 33 c
- the slave When the slave activates again during a time period 3217 to monitor the next idle sense message, it determines from a “request to send” type message from the master that the master has data for transmission to the slave. The slave responds by sending a “clear to send” type message during the time period 3217 and stays activated in order to receive transmission of the data. The master is thus able to transmit the data to the slave during a time period 3219 . Once the data is received by the slave at the end of the time period 3221 , the slave again enters a power conserving mode during a time period 3223 and activates again during the time period 3225 to monitor the next idle sense message.
- the slave may have data for transfer to the master. If so, the slave indicates as such to the master by transmitting a message during the time period 3217 and then executes a backoff algorithm to determine how long it must wait before transmitting the data. The slave determines from the backoff algorithm that it must wait the time period 3227 before transmitting the data during the time period 3221 . The slave devices use the backoff algorithm in an attempt to avoid the collision of data with that from other slave devices which are also trying to communicate with the master. The backoff algorithm is discussed more fully above in reference to FIG. 32 .
- the idle sense messages of the master may also aid in scheduling communication between two slave devices. For example, if a first slave device has data for transfer to a second slave device, the first slave sends a message to the master during the time period 3209 requesting communication with the second slave. The master then broadcasts the request during the next idle sense message. Because the second slave is monitoring the idle sense message, the second slave receives the request and stays activated at the end of the idle sense message in order to receive the communication. Likewise, because the first slave is also monitoring the idle sense message, it too receives the request and stays activated during the time period 3215 to send the communication.
- FIG. 33 b is a timing diagram of the protocol used according to one embodiment of the present invention illustrating a typical communication exchange between a peripheral LAN master having limited power resources and a peripheral LAN slave device. This exchange is similar to that illustrated in FIG. 33 a except that, because it has limited power resources, the master enters a power conserving mode.
- the master listens to determine if the channel is idle. If the channel is idle, the master transmits an idle sense message 3205 and then waits a time period 3231 to determine if any devices desire communication. If no communication is desired, the master enters a power conserving mode during a time period 3233 before activating again to listen to the channel. If the channel is not idle, the master does not send the idle sense message and enters a power saving mode for a time period 3235 before activating again to listen to the channel.
- Communication between the master and slave devices is the same as that discussed above in reference to FIG. 33 a except that, after sending or receiving data during the time period 3219 , the master device enters a power conserving mode during the time period 3237 .
- FIG. 33 c is also a timing diagram of one embodiment of the protocol used according to the present invention which illustrates a scenario wherein the peripheral LAN master device fails to service peripheral LAN slave devices.
- the master device periodically sends an idle sense message 3205 , waits a time period 3231 , and enters a power conserving mode during a time period 3233 as discussed above in reference to FIG. 33 b .
- the slave device monitors the idle sense messages during time periods 3209 and 3213 and enters a power conserving mode during time periods 3211 and 3215 . For some reason, however, the master stops transmitting idle sense messages. Such a situation may occur, for example, if the master device is portable and is carried outside the range of the slave's radio.
- the slave unsuccessfully attempts to monitor an idle sense message. The slave then goes to sleep for a time period 3243 and activates to attempt to monitor a next idle sense message during a time period 3245 , but is again unsuccessful.
- the slave device thereafter initiates a binding protocol to attempt to regain synchronization with the master. While two time periods 3241 and 3245 are shown, the slave may initiate such a protocol after any number of unsuccessful attempts to locate an idle sense message. With this protocol, the slave stays active for a time period 3247 , which is equal to the time period from one idle sense message to the next, in an attempt to locate a next idle sense message. If the slave is again unsuccessful, it may stay active until it locates an idle sense message from the master, or, if power consumption is a concern, the slave may enter a power conserving mode at the end of the time period 3247 and activate at a later time to monitor for an idle sense message.
- one of the slave devices may take over the functionality of the master device.
- a backup device has the ability to communicate with devices on the premises LAN. If the original master returns, it listens to the channel to determine idle sense messages from the backup, indicates to the backup that it has returned and then begins idle sense transmissions when it reestablishes dominance over the peripheral LAN.
- FIG. 34 is a timing diagram illustrating one embodiment of the peripheral LAN master device's servicing of both the high powered premises LAN and the low powered peripheral LAN subnetwork, with a single or plural radio transceivers, in accordance with present invention.
- Block 3251 represents typical communication activity of the master device.
- Line 3253 illustrates the master's communication with an access point on the premises LAN while line 3255 illustrates the master's communication with a slave device on the peripheral LAN.
- Lines 3257 and 3259 illustrate corresponding communication by the access point and slave device, respectively.
- the access point periodically broadcasts HELLO messages 3261 indicating that it is available for communication.
- the master device monitors the HELLO messages during a time period 3263 , and, upon determining that the base does not need servicing, enters a power conserving mode during a time period 3265 .
- the master then activates for a time period to monitor the next HELLO message from the base. If the master has data to send to the base, it transmits the data during a time period 3271 . Likewise, if the base has data to send to the master, the base transmits the data during a time period 3269 . Once the data is received or sent by the master, it may again enter a power conserving mode. While HELLO message protocol is discussed, a number of communication protocols may be used for communication between the base and the master device. As may be appreciated, the peripheral LAN master device acts as a slave to access points in the premises LAN.
- Block 3273 illustrates a situation where the master encounters a communication conflict, i.e., it has data to send to or receive from the slave on the peripheral LAN at the same time it will monitor the premises LAN for HELLO messages from the base. If the master has two radio transceivers, the master can service both networks. If, however, the master only has one radio transceiver, the master chooses to service one network based on network priority considerations. For example, in block 3273 , it may be desirable to service the slave because of the presence of data rather than monitor the premises LAN for HELLO messages from the base. On the other hand, in block 3275 , it may be more desirable to monitor the premises LAN for HELLO messages rather than transmit an idle sense message on the peripheral LAN.
- FIGS. 35 and 36 are block diagrams illustrating additional power saving features according to the present invention, wherein ranging and battery parameters are used to optimally select the appropriate data rate and power level for subsequent transmissions.
- network devices such as the computer terminal 3007 in FIGS. 28-29 b have the capability of performing high power transmissions, because of battery power concerns, such devices are configured to utilize minimum transmission energy. Adjustments are made based on ranging information and on battery parameters.
- battery conservation issues also justify the use of such data rate and power adjustments. This process is described in more detail below in reference to FIGS. 35 and 36 .
- FIG. 35 is a block diagram which illustrates a protocol 3301 used by a destination peripheral LAN device and a corresponding protocol 3303 used by a source peripheral LAN device to adjust the data rate and possibly the power level for future transmission between the two devices.
- the destination device identifies a range value at a block 3313 .
- the range value is identified by considering the received signal strength indications (RSSI) of the incoming transmission.
- RSSI received signal strength indications
- RSSI circuitry might be placed in all peripheral LAN radios, the added expense may require that only peripheral LAN master devices receive the circuitry. This would mean that only peripheral LAN master devices would perform the function of the destination device.
- the destination device subsequently transmits the range value to the slave device from which the transmission was received, at a block 3314 .
- the source peripheral LAN device Upon receipt of the range value from the destination device at a block 3321 , the source peripheral LAN device evaluates its battery parameters to identify a subsequent data rate for transmission at a block 3323 . If range value indicates that the destination peripheral LAN device is very near, the source peripheral LAN device selects a faster data rate. When the range value indicates a distant master, the source device selects a slower rate. In this way, even without adjusting the power level, the total energy dissipated can be controlled to utilize only that necessary to carry out the transmission. However, if constraints are placed on the maximum or minimum data rates, the transmission power may also need to be modified. For example, to further minimize the complexity associated with a fully random range of data rate values, a standard range and set of several data rates may be used.
- a transmission power adjustment might also need to supplement the data rate adjustment.
- any adjustment of power must take into consideration maximum and minimum operable levels.
- Data rate adjustment may supplement such limitations. Any attempted modification of the power and data rate might take into consideration any available battery parameters such as those that might indicate a normal or current battery capacity, the drain on the battery under normal conditions and during transmission, or the fact that the battery is currently being charged. The latter parameter proves to be very significant in that when the battery is being charged, the peripheral LAN slave device has access to a much greater power source for transmission, which may justify the highest power transmission and possibly the slowest data rate under certain circumstances.
- an indication of the identified data rate is transmitted back to the destination device so that future transmissions may take place at the newly selected rate.
- the indication of data rate may be explicit in that a message is transmitted designating the specific rate.
- the data rate may be transferred implicitly in that the new rate is chose and used by the source, requiring the destination to adapt to the change. This might also be done using a predefined header for synchronization.
- priority indications are also communicated.
- a radio transmits a higher priority indication, and each receiver thereafter treats the radio as having a higher protocol priority than other such radios that exhibit normal power supply energy.
- the remaining battery life is optimized.
- the low power device might be directly polled periodically so to allow scheduled wake-ups and contention free access to a receiver.
- priority indications not need to be sent. Instead, the low battery power device itself exercises protocol priority.
- the low power device may either minimize the back-off period or ignore the back-off period completely. Thus, the low power device gains channel access easier than other normal power level devices.
- Other protocol priority schemes may also be assigned by the receivers to the low power device (via the indication), else may be taken directly by the low power device.
- FIG. 36 illustrates an alternate embodiment for carrying out the data rate and possibly power level adjustment.
- the source peripheral LAN device sends an indication of its current battery parameters to the destination peripheral LAN device. This indication may be each of the parameters or may be an averaged indication of all of the parameters together.
- the destination peripheral LAN device 355 upon receipt, stores the battery parameters (or indication).
- the destination terminal upon receiving a transmission from the source device, based on range determinations and the stored battery parameters, the destination terminal identifies the subsequent data rate (and possibly power level). Thereafter, the new data rate and power level are communicated to the source device either explicitly or implicitly for future transmissions.
- FIG. 37 illustrates an exemplary block diagram of a radio unit 3501 capable of concurrent participation on multiple LAN's.
- a control processor 3503 sends a digital data stream to a modulation encoding circuit 3505 .
- the modulation encoding circuit 3505 encodes the data stream in preparation for modulation by frequency translation circuit 3507 .
- the carrier frequency used to translate the data stream is provided by a frequency generator circuit 3509 .
- the modulated data stream is amplified by a transmitter amplifier circuit 3511 and then radiated via the one of a plurality of antennas 3513 that has been selected via an antenna switching circuit 3515 .
- the modulation encoding circuitry 3505 , translator 3507 , amplifier 3511 and associated support circuitry constitute the transmitter circuitry.
- the RF signal received by the selected one of the plurality of antennas 3513 is communicated to a receiver RF processing circuit 3517 .
- the receiver RF processing circuit 3517 amplifies the RF signal received.
- the amplified received signal undergoes a frequency shift to an IF range via a frequency translation circuit 3519 .
- the frequency translation circuit 3519 provides the center frequency for the frequency shift.
- a receiver signal processing circuit receives the IF signal, performs a more exact channel filtering and demodulation, and forwards the received data to the control processor 3503 , ending the process.
- the receiver signal processing 3521 , translator 3517 , receiver RF processing 3517 and associated support circuitry constitute the receiver circuitry.
- the control processor 3503 operates pursuant to a set of software routines stored in memory 3522 which may also store incoming and outgoing data. Specifically, the memory 3522 contains routines which define a series of protocols for concurrent communication on a plurality of LANs. As part of such operation, the control processor 3503 provides for power savings via a power source control circuit 3523 , i.e., whenever the participating protocols permit, the control processor 3503 causes selective power down of the radio transceiver circuitry via a control bus 3525 . Also, via the bus 3525 , the control processor sets the frequency of the frequency generator 3509 so as to select the appropriate band and channel of operation required by a correspondingly selected protocol.
- control processor 3503 selects the appropriate antenna (via the antenna switching circuitry 3515 ) and channel filtering in preparation for operation on a selected LAN. Responding to the software routines stored in the memory 3522 , the control processor 3503 selects the appropriate LANs to establish participation, detaches from those of the selected LANs in which participation is no longer needed, identifies from the selected LANs a current priority LAN in which to actively participate, maintains a time-shared servicing of the participating LANs. Further detail regarding this process follows below.
- control processor 3503 constitutes a typical microprocessor on an independent integrated circuit. In another embodiment, the control processor 3503 comprises a combination of distributed processing circuitry which could be included in a single integrated circuit as is a typical microprocessor. Similarly, the memory 3522 could be any type of memory unit(s) or device(s) capable of software storage.
- the radio circuitry illustrated is designed with the frequency nimble frequency generator 3509 so as to be capable of operation on a plurality of LANs/WANs. Because each of the plurality may be allocated a different frequency band, more than one antenna may be desirable (although a single antenna could be used, antenna bandwidth limitations might result in an unacceptable transmission-reception inefficiency). Thus, to select the appropriate configuration, the control processor 3503 first identifies the LAN/WAN on which to participate and selects the corresponding radio configuration parameters from the memory 3521 .
- control processor 3503 sets the frequency of the generator 3509 , selects the appropriate antenna via the antenna switching circuit 3515 , and configures the receiver RF and signal processing circuits 3517 and 3521 for the desired LAN/WAN.
- the antenna switching circuit 3515 comprises a plurality of digitally controlled switches, each of which is associated with one of the plurality of antennas 3513 so as to permit selective connection by the control processor 3503 of any available antenna to the transceiver circuitry.
- FIG. 38 illustrates an exemplary functional layout of the frequency generator 3509 of FIG. 37 according to one embodiment of the present invention.
- the frequency generator 3509 responds to the control processor 3503 by producing the translation frequency necessary for a selected LAN/WAN.
- the illustrated frequency generator comprises a voltage controlled oscillator (VCO) 3601 .
- VCO voltage controlled oscillator
- the center frequency F VCO tracks the input voltage.
- the VCO is stabilized by connecting it in a phase locked loop to a narrowband reference, such as a crystal reference oscillator 3603 .
- the oscillator 3603 outputs a signal of a fixed or reference frequency F REF to a divide-by-R circuit 3605 , which divides as its name implies the reference frequency F REF by the known number R.
- a phase detector 3609 receives the divided-by-R output of the circuit 3609 and the feedback from the output of the VCO 3601 via a divide-by-N circuit 3607 . Upon receipt, the phase detector 3609 compares the phase of the outputs from the circuits 3605 and 3607 . Based on the comparison, a phase error signal is generated and applied to a lowpass loop filter 3611 . The output of the filter 3611 is applied to the input of the VCO 3601 causing the center frequency of the VCO 3601 to lock-in. Therefore, if the output of the VCO 3601 begins to drift out of phase of the reference frequency, the phase detector 3609 responds with a corrective output so as to adjust the center frequency of the VCO 3601 back in phase.
- the center frequency of the VCO 3601 is a function of the reference frequency as follows:
- F VCO ( F REF *N )/ R
- the control processor 3503 ( FIG. 37 ) need only vary the variables “R” and “N” and perhaps the frequency of the reference oscillator. Because the output F REF of the reference oscillator 3603 is quite stable, the phase lock loop as shown also keeps the output frequency F VCO of the VCO 3601 stable.
- the value R in the divide-by-R circuit 3605 is chosen so as to generate an output equal to the channel spacing of a desired LAN/WAN, while the value N is selected as a multiplying factor for stepping up the center frequency of the VCO 3601 to the actual frequency of a given channel.
- the frequency of the reference oscillator is chosen so as to be divisible by values of R to yield the channel spacing frequencies of all potential LANs and WANs.
- a single reference frequency may be chosen to be a whole multiple of 12.5 KHz. Alternately, multiple reference frequencies may be chosen.
- the value N is chosen to effectively multiply the output of the divide-by-R circuit 3605 to the base frequency of a given channel in the selected WAN.
- the value of R is chosen so as to yield the spacing between frequency hops.
- each hopping frequency can be selected. Randomizing the sequence of such values of N provides a hopping sequence for use by an access point as described above.
- Pluralities of hopping sequences may be stored in the memory 3522 ( FIG. 37 ) for operation on the premises LAN, for example.
- FIG. 39 illustrates further detail of the receiver RF processing circuit 3517 of FIG. 37 according to one embodiment of the present invention.
- a preselector 3651 receives an incoming RF data signal from a selected one of the plurality of antennas 3513 ( FIG. 37 ) via an input line 3653 .
- the preselector 3651 provides a bank of passive filters 3657 , such as ceramic or dielectric resonator filters, each of which provides a coarse filtering for one of the LAN/WAN frequencies to which it is tuned.
- One of the outputs from the bank of passive filters 3657 is selected by the control processor 3503 via a switching circuit 3655 so as to monitor the desired one of the available LANs/WANs.
- the selected LAN/WAN RF signal is amplified by an RF amplifier 3659 before translation by the frequency translation circuit 3519 ( FIG. 37 ).
- FIG. 40 illustrates further detail of the receiver signal processing circuit 3521 of FIG. 37 according to one embodiment of the present invention.
- digitally controlled switching circuits 3701 and 3703 respond to the control processor 3503 by selecting an appropriate pathway for the translated IF data signal through one of a bank of IF filters 3705 .
- Each IF filter is an analog crystal filter, although other types of filters such as a saw filter might be used.
- the IF filters 3705 provide rather precise tuning to select the specific channel of a given LAN/WAN.
- the filtered IF data signal is then amplified by an IF amplifier 3707 .
- the amplified IF signal is then communicated to a demodulator 3709 for demodulation.
- the control processor retrieves the incoming demodulated data signal for processing and potential storage in the memory 3522 ( FIG. 37 ).
- FIG. 41 illustrates further detail of the receiver signal processing circuit 3521 of FIG. 37 according to another embodiment of the present invention.
- the IF signal resulting from the translation by the frequency translator circuitry 3519 enters the receiver signal processing circuit via an input 3751 .
- the IF signal passes through an anti-aliasing filter 3753 , and is amplified by a linear amplifier 3755 .
- An IF oscillator 3757 supplies a reference signal f REF for translation of the incoming IF signal at frequency translation circuits 3759 and 3761 .
- FIG. 42 illustrates further detail of some of the storage requirements of the memory 3522 of FIG. 37 according to one embodiment of the present invention.
- the control processor 3503 accesses the information in the memory 3522 needed for radio setup and operation on a plurality of LANs/WANs.
- the memory 3522 stores: 1) a plurality of software protocols, one for each LAN/WAN to be supported, which define how the radio is to participate on the corresponding LAN; and 2) an overriding control set of routines which govern the selection, use and interaction of the plurality of protocols for participation on desired LANs/WANs.
- MAC sublayer provides detail regarding how communication generally flows through a corresponding LAN or WAN.
- the MAC sublayer handles functions such as media access control, acknowledge, error detection and retransmission.
- the MAC layer is fairly independent of the specific radio circuitry and channel characteristics of the LAN or WAN.
- premises LAN, peripheral LAN, vehicular LAN and WAN MAC routines 3811 , 3813 , 3815 and 3817 provide definition as to how the control processor 3503 ( FIG. 37 ) should operate while actively participating on each LAN or WAN.
- the sets of MAC routines 3811 - 17 might also share a set of common routines 3819 .
- the sets of MAC routines 3811 - 17 might be considered a subset of an overall MAC which shares the common MAC routines 3819 .
- routines govern the specific switching for channel filtering and antenna selection required by a given LAN or WAN.
- routines govern the control processor 3503 's selection of parameters such as for R and N for the frequency generator 3509 ( FIG. 38 ), or the selective power-down (via the power source control circuitry 3503 — FIG. 37 ) of portions or all of the radio circuitry whenever possible to conserve battery power.
- routines and parameters are referred to as physical (PHY) layer control software 3821 .
- PHY physical
- a set of MAC select/service routines 3823 govern the management of the overall operation of the radio in the network. For example, if participation on the premises LAN is desired, the MAC select/service routines 3823 direct the control processor 3503 ( FIG. 37 ) to the common and premises MAC routines 3819 and 3811 respectively. Thereafter, if concurrent participation with a peripheral LAN is desired, the select/service routines 3823 direct the control processor 3503 to enter a sleep mode (if available). The control processor 3503 refers to the premises LAN MAC routines 3811 , and follows the protocol necessary to establish sleep mode on the premises LAN. Thereafter, the select/service routines 3823 directs the control processor 3503 to the peripheral LAN MAC routines 3813 to establish and begin servicing the peripheral LAN.
- the select/service routines 3823 direct a detachment from the peripheral LAN (if required) as specified in the peripheral LAN MAC routines 3813 .
- the processor 3503 is directed to enter a sleep mode via the peripheral LAN MAC routines 3813 , and to return to servicing the premises LAN.
- additional protocol layers as well as incoming and outgoing data are also stored with the memory 3522 , which, as previously articulated, may be a distributed plurality of storage devices.
- FIG. 43 illustrates a software flow chart describing the operation of the control processor 3503 ( FIG. 37 ) in controlling the radio unit to participate on multiple LANs according to one embodiment of the present invention.
- the control processor first determines whether the radio unit needs to participate on an additional LAN (or WAN). If such additional participation is needed, at a block 3903 , the radio unit may register sleep mode operation with other participating LANs if the protocols of those LANs so require and the radio unit has not already done so.
- the control processor causes the radio unit to poll or scan to locate the desired additional LAN. If the additional LAN is located at a block 3907 , participation of the radio unit on the additional LAN is established at a block 3909 .
- the control processor next determines at a block 3911 whether any of the participating LANs require servicing. If any given participating LAN requires servicing, at a block 3913 , the radio unit may be required by the protocol of the given LAN to reestablish an active participation status on that LAN, i.e., indicate to the given LAN that the radio unit has ended the sleep mode. Next, at a block 3915 , the radio unit services the given LAN as needed or until the servicing of another LAN takes priority over that of the given LAN. At a block 3917 , the radio unit may then be required to register sleep mode operation with the given LAN if the LAN's protocol so requires.
- the control processor determines at a block 3919 whether the radio needs to detach from any given participating LAN. If so, the radio unit may implicitly detach at a block 3923 if the protocol of the LAN from which the radio wishes to detach requires no action by the radio unit. However, at a block 3921 , the radio unit may be required to establish active participation on the LAN in order to explicitly detach at block 3923 . For example, such a situation may arise when a portable terminal desires to operate on a shorter range vehicular LAN and detaches from a premises LAN. The portable terminal may be required by the protocol of the premises LAN to establish active communication on the premises LAN to permit the radio unit to inform the premises LAN that it is detaching and can only be accessed through the vehicular LAN.
- FIG. 44 is an alternate embodiment of the software flow chart wherein the control processor participates on a master LAN and, when needed, on a slave LAN.
- the control processor causes the radio unit to poll or scan in order to locate the master LAN. If the master LAN has not been located at a block 3953 , polling or scanning for the master LAN continues. Once the master LAN is located, participation with the master is established at a block 3955 .
- the radio unit participates with the master LAN until the need for the radio unit to participate on the slave LAN takes precedence. When that condition occurs, the control processor determines at a block 3959 whether participation of the radio unit on the slave network is established.
- the radio unit services the slave LAN as needed or until the servicing of the master LAN takes priority. If the control processor determines at a block 3965 that servicing of the slave LAN has been completed, the radio unit detaches from the slave LAN at a block 3967 and returns to block 3957 to continue participation on the master LAN.
- the radio unit does not detach from the slave LAN. In that case, before returning to block 3957 to service the master LAN, the radio unit may be required by the protocol of the slave LAN to register sleep mode operation with the slave LAN at a block 3969 .
- the overall communication system of the present invention has been adapted to service the environment found, for example, in a retail store.
- the premises of the retail store are configured with a communication network to provide for inventory control.
- the communication network includes a backbone LAN 4501 , an inventory computer 4511 , and a plurality of cash registers located throughout the store, such as cash registers 4503 and 4505 .
- the backbone LAN 4501 is a single wired link, such as Ethernet. However, it may comprise multiple sections of wired links with or without wireless link interconnects.
- each cash register 4503 and 4505 is communicatively interconnected with the inventory computer via an infrared link.
- the inventory computer 4511 which can range from a personal to main frame computer, provides central control over the retail inventory by monitoring the inventory status. Thus, the inventory computer 4511 must monitor both sales and delivery information regarding inventoried goods.
- the cash registers 4503 and 4505 include code scanners, such as tethered code scanners 4507 and 4509 , which read codes on product labels or tags as goods are purchased. After receiving the code information read from the scanners 4507 and 4509 , the cash registers 4503 and 4505 communicate sales information to the inventory computer 4511 via the backbone LAN 4501 .
- the access point 4517 acts as a direct access point to the backbone LAN 4501 , even though a series of wireless hops might actually be required.
- the inventory computer 4511 Upon receiving the sales information from the cash registers 4503 and 4505 , the inventory computer 4511 automatically debits the inventory count of the goods sold. Similarly, upon receiving the delivery information, the inventory computer 4511 automatically credits the inventory count of the goods delivered. With both the sales and delivery information, the inventory computer 4511 accurately monitors the inventory of all goods stocked by the retail store. From the inventory information, the inventory computer 4511 generates purchase orders for subsequent delivery, automating the entire process.
- the inventory computer 4511 receives sales information from the cash registers 4503 and 4505 as detailed above. Whenever the restocking process is initiated, the inventory computer 4511 checks the retail inventory for each item sold to determine if restocking is needed. If restocking proves necessary, the inventory computer 4511 , evaluating recent sales history, determines the quantity of the goods needed. From this information, an “inventory request” is automatically generated by the inventory computer 4511 . Once verified (as modified if needed), the inventory request is automatically forwarded by the inventory computer 4511 to the warehouse 4519 . This forwarding occurs via either a telephone link using a modem 4521 , or a WAN link using the backbone LAN 4501 , access point 4517 , and an antenna tower 4523 .
- the delivery truck 4513 is loaded pursuant to the inventory request received from the inventory computer 4511 .
- the truck 4513 travels to the premises of the retail store.
- the radio terminal 4515 in the truck 4513 automatically gains access to the retail premises LAN via the access point 4517 (as detailed above), and communicates an anticipated delivery list (a “preliminary invoice”), responsive to the inventory request, to the inventory computer 4511 .
- an anticipated delivery list (a “preliminary invoice”)
- dock workers can be notified to prepare for the arrival of the delivery truck 4513 .
- any rerouting information can be communicated to the terminal 4515 in the delivery truck 4513 . If a complete rerouting is indicated, the truck 4513 may be redirected without ever having reached the dock.
- codes are read from all goods as they are unloaded using portable code readers, which may be built into or otherwise communicatively attached to the radio terminal 4515 .
- the codes read are compared with and debited against the preliminary invoice as the goods are unloaded. This comparing and debiting occur either solely within the terminal 4515 or jointly within the terminal 4515 and the inventory computer 4511 . If the codes read do not correspond to goods on the inventory request, or if the codes read do correspond but are in excess of what was required by the inventory request, the goods are rejected. Rejection, therefore, occurs prior to the actual unloading of the goods from the delivery truck 4513 .
- the goods received from the delivery truck 4513 undergo a confirmation process by a dock worker who, using a radio terminal 4525 configured with a code reader, reads the codes from the goods on the dock to guarantee that the proper goods, i.e., those requested pursuant to the inventory request, were actually unloaded.
- This extra step of confirmation can be eliminated, however, where the dock worker directly participates in the code reading during the unloading process in the delivery truck 4513 .
- the code reading within the delivery truck 4513 could be eliminated in favor of the above described on-dock confirmation process, but, reloading of any wrongly unloaded goods would be required.
- a verified invoice is automatically generated by the radio terminal 4515 and routed to the inventory computer 4511 for inventory and billing purposes.
- the verified invoice is routed to the warehouse 4519 .
- Such routing may occur as soon as the delivery truck returns to the warehouse 4519 .
- the radio terminal 4515 communicates the final invoice immediately to the warehouse 4519 .
- the warehouse 4519 upon receiving the final invoice, checks the final invoice with the list of goods loaded in the delivery truck 4513 , and determines whether delivery of the remaining goods is possible. If so, the warehouse 4519 reroutes the truck 4513 to the next delivery site.
- FIGS. 46 a - b illustrate a further embodiment of the communication system of the present invention which illustrate the use of access servers that support local processing and provide both data and program migration.
- FIG. 46 a illustrates a wireless and hardwired communication network which uses a spanning tree protocol to provide ubiquitous coverage throughout a premises.
- any network device e.g., an end-point device such as a wireless, hand-held computer terminal 4601
- another network device e.g., a hardwired computer 4603
- a routing request is constructed which specifically identifies the destination device. After construction, the routing request is transmitted through a spanning tree pathway to the destination device.
- the terminal 4601 formulates a routing request identifying the computer 4603 .
- the routing request may also contain, for example, a message or data to be delivered or a request for data or program code.
- the terminal 4601 transmits the routing request downstream (toward the root of the spanning tree) to an access device 4605 .
- the access device 4605 examines its spanning tree routing table entries, attempting to locate an upstream path to the destination device identified by the request. Because no entry exists, the access device 4605 transmits the routing request downstream to an access device 4607 . After finding no routing table entry, the access device 4607 routes the request to a root access device 4609 . Finding no routing table entry for the computer 4603 , the access device 4609 transmits the routing request onto a wired LAN 4610 .
- a root access device 4611 uses its routing table which has an entry for the computer 4603 to store the routing request and transmits the request upstream to an access device 4613 .
- the access device 4613 having an entry, sends the routing request to an access device 4617 .
- the access device 4617 Upon receipt, the access device 4617 forwards the routing request to the computer 4603 .
- an end-point device When a network device, an end-point device for example, has a need for remotely stored program code (i.e., program objects) or data (i.e., data objects) such as a schematic diagram, delivery address or repair manual, the end-point device formulates a code or data request and sends it in a downstream spanning tree pathway. Unlike a routing request, data and code requests do not have a specific destination designated. Instead, data/code requests (data requests and/or code request) only identify the specific data or code needed. This is because the requesting device need not know the destination of the data or code needed, promoting dynamic, spanning tree migration—as will become apparent below.
- program code will be reduced to an interpretive form.
- Common libraries of program objects (in an object code form, i.e., executable form) are stored at each network terminal, computer or access server.
- the sequence of calls to each program object is delivered along with a list of all program objects that are needed to fully execute the application program. Thereafter, if the specific underlying code for any of the delivered objects is not found locally, a renewed request for the executable code for those program objects is made.
- the application program may be executed.
- the movement of the program application and other specific program objects are tracked and migrated as described above in relation to generic data.
- the terminal 4667 typically operates using an application program directed to an exemplary installation and service industry.
- a driver of a vehicle 4666 enters the premises via a dock.
- the terminal 4667 reports its status.
- the terminal 4667 receives a command to load a docking application from the computer 4652 via the premises network.
- the terminal 4667 transmits a program code request specifying the application. Because of previous activity, for example, the access device 4659 (which receives the transmission) happens to have the program code stored locally. It fields the request, sending the list of program objects along with the “interpretive” program object sequence.
- the terminal 4667 Upon receipt, the terminal 4667 might identify that all program object executable code is stored locally, and, therefore, begins to execute the application program. Otherwise, if certain program object executable is not locally stored, the terminal 4667 transmits a subsequent request. This time, the access device 4659 might not currently store the executable program object code. Thus, the access server 4659 routes the request downstream toward a device which does store the code. Once located, the code is delivered upstream to the terminal 4667 for execution.
- Requested data or program code may reside in one or more of those of the access devices 4605 , 4607 , 4609 , 4611 , 4613 , 4615 , 4617 , 4619 and 4621 which happen to be configured as access servers. Otherwise, the data or code may be residing in one or more of the computers 4603 , 4621 , 4623 or 4625 , if they are configured as servers.
- the terminal 4601 would begin the process of retrieving the data by formulating a data request.
- the data request does not identify the access device 4619 , but only identifies the needed data.
- the terminal 4601 routes the request downstream to the access device 4605 .
- the access device 4605 determines that it does not store the requested data, and fails to identify the requested data in a routing table entry.
- the access device 4605 forwards the data request to the access device 4607 .
- the access device 4607 cannot identify the requested data and routes the request to the access device 4609 .
- the access device 4609 Upon receipt, the access device 4609 consults its routing table and identifies an entry for the requested data. The entry lists the next device in an upstream path to the data, i.e., the access device 4619 is listed. Thus, the access device 4609 forwards the data request upstream to the access device 4619 .
- the access device 4619 responds to the data request by: 1) locating the stored data; 2) formulating a routing request (containing the data) destined for the requesting device, the terminal 4601 ; and 3) sending the routing request downstream to the access device 4609 .
- the access device 4609 identifies the terminal 4601 , and sends the routing request (with attached data) upstream to the access device 4607 .
- the access device 4607 sends the routing request upstream to the access device 4605 . Finally, the access device 4607 sends the routing request to the destination, the terminal 4601 , completing the process.
- Program code e.g., program objects
- Program code may be similarly stored, requested and delivered.
- a network device formulates a processing request which identifies the specific remote processing needed, yet need not identify a processing destination. After formulation, the processing request is transmitted downstream toward an access server or computer server capable of performing the requested processing. For example, the access device 4617 fields processing requests from the computer 4603 . After determining that it cannot perform the processing, the access device 4617 consults its spanning tree routing table, yet finds no upstream entry for any network device capable of performing the processing. Thus, the access device 4617 routes the processing request downstream to the access server 4613 . Although the access device 4613 has not been configured for such processing, the access device 4613 does find an entry identifying a first network device, the access device 4615 , in an upstream pathway to a location where such processing is handled.
- the access device 4613 forwards the processing request to the access device 4615 which is configured as an access server to handle the processing. Thereafter, the requested processing is carried out by the access device 4615 , with any associated intercommunication with the computer 4603 needed via the same pathway using routing requests.
- each spanning tree routing table not only includes entries for all upstream network devices, each also includes entries for all upstream data, program code and processing resources. Moreover, each such entry only identifies the next network device through which forwarded requests are to made in the pathway to the request destination. Each spanning tree table also contains an entry designating a downstream route for use when no upstream entry can be located.
- each of the access devices 4605 , 4607 , 4609 , 4611 , 4613 , 4615 , 4617 , 4619 and 4621 is configured as an access server.
- a specific data object in high demand is not initially stored in any of the access devices. Instead, the data object in high demand is originally stored on the computer 4623 , configured as a server.
- each of the intermediate access servers Upon encountering a first data request by the terminal 4601 for the data object in high demand, each of the intermediate access servers, the access devices 4605 , 4607 and 4609 , fail to identify the data object which results in the sequential forwarding of the data request to the computer 4623 . However, each of the intermediate access servers record entries for the data in their routing tables with a downstream destination. Thereafter, each time that a network device, such as the terminal 4601 , requests the data object, the intermediate access servers which receive the request bump up a count stored in the routing table entry.
- each intermediate access server upon encountering a data request, considers: 1) the associated count entry; 2) the duration of time over which the count entry has accumulated; 3) the cost of retrieving the data from the downstream source; 4) the size of the data object; and 5) its own resource availability (e.g., remaining storage space).
- the access device 4605 determines that migration of a copy of the data object into its own available storage could improve network performance. Thus, instead of sending the data request downstream to the access device 4607 , the access device 4605 substitutes and forwards a migration request instead of the data request.
- the access devices 4607 and 4609 Upon receiving the migration request, the remaining intermediate access servers, the access devices 4607 and 4609 merely forward the migration request to the computer 4623 . In response, the computer 4623 records the migration event, i.e., the data object migrated and the migration destination (the access device 4605 ), for future updating control.
- the computer 4623 also forwards a copy of the data object to the access device 4609 for relaying to the access device 4605 via the access device 4607 .
- the access device 4605 stores the data object locally, and forwards a further copy back to the requesting network device, the terminal 4601 .
- the access device 4605 responds by sending a copy of the locally stored data object toward the requesting device.
- the access device 4605 has effectively intercepted a copy of the data for local storage, and, thereafter, forwards a copy of the locally stored copy to service any incoming requests.
- the data object size and link cost associated with reaching a given intermediate access device is recorded. For example, if a wired communication link between the computer 4623 and the access device 4609 is assigned a cost of “1”, after fielding the data request, the computer 4623 constructs a data response which not only includes the requested data object, but also includes a link cost entry of “1” and an indication of the data object size.
- the access device 4609 identifies the cost to the access device 4607 , for example a cost of “3”, the access device adds the “3” to the pending cost entry in the data response, and forwards the response to the access device 4607 .
- the access device 4607 assesses a cost of “3” for the communication link to the access device 4605 , adds the “3” to the pending cost entry of “4”, and forwards the data response to the access device 4605 .
- the data response is delivered to the terminal 4601 .
- the terminal 4601 sees that to access the data again, it will most likely result in “11” units of communication cost.
- the terminal 4607 considers the cost of “3” when determining whether to migrate the data object or not.
- all intermediate access devices record the cost of the upstream link to the copy of the data object. Thereafter, upon receiving a data request for the data object, an intermediate access device can compare the cost of the upstream pathway to the copy with the downstream pathway to the original data object to choose the pathway with the lesser cost.
- a notification of deletion of a copy of a data object destined for a downstream source is also noted by each intermediate access devices, requiring deletions of the entries for the “copied then deleted” data object.
- the access device 4605 deletes the locally stored copy of the data, and routes to the computer 4623 an indication that the local copy of the data object has been deleted.
- the intermediate access devices 4607 and 4609 remove from their routing tables the entries to the recently deleted upstream copy.
- the computer 4623 records the deletion, completing the purging process.
- Processing resources are similarly migrated and purged.
- an access device To service a processing request, an access device must be configured not only with sufficient hardware resources but must also store the programming code and associated data necessary to perform the requested processing.
- the terminal 4601 desires to search prior sales information but can store neither the information nor the necessary search program routines because of limited local resources, the terminal 4601 formulates a processing request which it routes downstream to the access device 4605 .
- the access device 4609 is originally configured with the hardware and software necessary to perform the processing request.
- the access device 4609 uses bulk storage devices to store past sales data, and executes a search program in response to received processing requests.
- the intermediate access server 4607 is configured with appropriate processing and storage resources, originally, it does not store the search program or the past sales data. Thus, while receiving repeated processing requests from the terminal 4601 via the intermediate access device 4605 , the access device 4607 initially logs the request in its routing table and forwards the request downstream to the access device 4609 which fields, processes and responds to the requests.
- the access device 4607 sends a migration inquiry downstream to the access device 4609 .
- the access device 4609 responds by sending an indication of the volume of the potential transfer upstream, to the access device 4607 . Based on the indication along with the aforementioned other migration factors, the access device 4607 may or may not pursue the migration.
- the access device 4607 assembles a migration request identifying the desired processing, and routes the request downstream to the access device 4609 .
- the access device 4609 records the migration (for future updating) and begins to transfer a copy of the program (or programming object(s)) and the past sales information to the access device 4607 , preferably occurs during periods of low network traffic.
- intermediate access devices between the source and destination of the processing migration are not shown in the exemplary illustration above, any intermediate access devices that do occur follow the same procedures previously set forth in reference to data object migration, recording and purging routing table entries to upstream and downstream processing devices.
- migration does not always flow immediately to the access device nearest a requesting network device. Instead, for example, an access device which receives the same data or program code requests from a plurality of different terminals will perform migration before any upstream access device unless upstream link costs are comparatively much higher.
- each of the access devices 4655 and 4659 are configured for long distance, wireless communication with the access server 4665 via a second higher power radio and associated antenna, e.g., WAN, paging, cellular, etc.
- the corresponding first radio and associated antenna are used for relatively lower power premises network communication.
- the access servers 4665 is much more likely to engage in the dynamic migration of data/code objects or processing resources than the other access servers located within the premises network.
- the mobile access server 4665 With a link cost assessed at “20” for example, the mobile access server 4665 rapidly decides to migrate, while slowly deciding to purge migrated data.
- the migration/purging process used is the same as that described above in reference to the premises network of FIG. 46 a.
- the mobile access server 4665 is also configured to provide anticipatory migration, and responds to direct migration commands from the terminal 4667 or other controlling network devices.
- anticipatory migration may occur in two ways. First, if a driver is preparing to leave the premises to service a specific appliance, for example, the schematic diagram of the appliance may be migrated to the mobile access server 4665 in anticipation of future use. This form of anticipatory migration may be directed from a controlling device downstream in the premises network, e.g., the computer 4652 which also stores the schematic diagram, from the terminal 4667 upstream, or from the access server 4665 itself upon analysis of the work order.
- a second form of anticipatory migration originates at the access server 4665 (although the resulting migration control could originate either up or downstream).
- the access server 4665 anticipates future migration needs through the storage and analysis of previous requests for data/code objects or processing resources. For example, if the access server 4665 determines that nearly every time the terminal 4667 requests a given program code or program object, the terminal 4667 follows that request a short time thereafter with further requests for specific data objects. In such circumstances, instead of repeatedly initiating, requesting and delivering portions of data over the communication the higher cost link, the requested and anticipated requests are all handled in one communication session, saving money and time.
- the terminal 4667 can also participate in anticipatory migration.
- the terminal 4667 can be programmed to make all upcoming requests at one time, and often in advance of leaving the low power radio range of the premises network.
- the terminal 4667 can also be specifically programmed to issue direct migration and purging commands to the access server 4665 , permitting further control of the migration process and system resources of the mobile access server 4665 .
- the terminal 4667 may be configured to historically monitor all requests so as to anticipate subsequent requests in the manner described above in reference to the access server 4665 .
- terminals 4664 and 4667 are configured to receive keyed, voice and pen input. Other types of input such as video or thumbprint image capture might also be added.
- the terminals 4664 and 4667 can also be configured with code reading/image capturing devices, or be configured to receive input from external code reading/image capturing devices (via tethering or low power wireless links).
- Each terminal also provides voice and LCD (liquid crystal display) output for the user.
- voice and LCD liquid crystal display
- Each type of data handled by the terminals 4664 and 4667 places specific requirements on the communication network. For example, when communicating voice information, a communication channel or link providing acceptable real time voice delivery may be required. Dedicated bandwidth may be reserved for such communications through the spanning tree network illustrated, or established via a cellular link with the access device 4655 . Moreover, if the network conditions are favorable, dedicated bandwidth need not be provided at all (see, e.g., discussion regarding FIG. 55 below).
- Cellular radios may be built into the terminals 4664 and 4667 (via PCMCIA slots, for example) or via tethered cellular phones.
- an access device can be configured with a cellular radio to provided cellular service to mobile terminal devices via either dedicated or time-shared wireless bandwidth through the spanning tree, for example.
- postprocessed signature images require at most a delayed delivery of a plurality of such images over inexpensive and possibly slower or less convenient communication links.
- such images may be delivered as a background task when network communication or channel traffic is low.
- relatively small packages of one way communication to the terminal 4667 may travel through a lower cost paging network for delivery. They may also travel through the spanning tree network, cellular networks, or through other higher cost, two way WANs.
- the routing tables within each network device subdivide routing information based on the type of data to be forwarded.
- the access device 4665 receives a communication from the terminal 4667 .
- the communication takes the form of a requested link for voice signal data destined for the computer 4651 .
- the access device 4665 consults its routing table, determines that voice data can take one of two pathways: through either a cellular radio or WAN route to the access device 4655 .
- the access device 4665 delivers the communication route options to the terminal 4667 for user and/or software consideration.
- the access device 4665 establishes a cellular link with the access device 4655 , and requests a voice session with the computer 4651 .
- the access point 4655 consults its routing table, and, for voice data to the computer 4651 , it identifies the need to use the wired LAN 4653 to communicate with the computer 4651 .
- the access point 4655 also determines whether dedicated bandwidth is needed (based on timing considerations), or whether packet based time-shared voice data delivery is sufficient.
- the access device 4655 responds by placing the request on the wired LAN 4653 .
- the computer 4651 communicates an acknowledge message which is routed through the access device 4655 to the access device 4665 .
- the access device 4665 delivers the acknowledge message to the terminal 4667 .
- the terminal 4667 begins sending the voice data to the computer 4651 through the designated route.
- the access device 4665 reports the status, again offering the remaining communication route via the WAN. If selected, the access device 4665 establishes the pathway to the access device 4659 via WAN communications. In turn, the pathway is established through the access device 4657 , access device 4655 and the computer 4653 . With a returned acknowledge from the computer 4653 , the terminal 4667 begins voice communication.
- a communication pathway between any other two network devices can be established.
- the computer 4651 desires the user of the terminal 4664 to obtain and compare a penned signature image for comparison with an authenticated signature stored at the computer 4651
- the computer 4651 first attempts to communicate the request and image data to the terminal 4664 via the premises network. If the terminal 4664 happens to be out of range of the premises network, the computer 4651 attempts to page the terminal 4664 with the comparison request. In response, the terminal 4664 considers the data type via its routing table, identifies the route(s) available, and offers the route options to the user and/or program at the terminal 4664 . If selected, the terminal 4664 establishes the selected communication link for the delivery of the associated comparison image.
- the access device 4665 stores several types of lower priority data until such time or data storage size justifies delivery. Such deliver may not occur until the vehicle returns to the premises network, e.g., to a dock at the premises.
- requests for communication may also include specific limitations. For example, the need for voice data only in real time full-duplex (i.e., two-way) mode can be specified, and will result in no consideration by any intermediate network device of other half-duplex or pseudo real time link options. Lowest cost delayed delivery can alternatively be specified if delivery speed is not an issue. Requests specifying high priority result in the selection of the fastest communication link regardless of cost.
- terminals 4664 and 4667 can be configured to operate running application software under the DOS, Windows or OS/2 operating system environments.
- Communication between the terminal 4667 and the access device 4665 occurs via an infrared link if the terminal 4667 is docked within the vehicle. Routing tables within the access device 4665 and terminal 4667 both contain dual entries for communication exchange pathways. First, the infrared link is attempted, if available. Otherwise, a lower power RF communication transmission is used. Although a wired docking arrangement might be used instead of infrared, infrared is preferred inside the vehicle for ease of installation and to minimize wire clutter. Such infrared installations also provide support for communicating with printers, scanners and other peripheral devices within the vehicle, i.e., the vehicular LAN preferably operates via infrared except when communicating with a remotely located terminal 4667 or with other remotely located network devices.
- service personnel use the vehicle 4666 for visiting customer sites.
- the terminal 4667 is carried within the customer's premises. Ordinarily, communication with the premises network would take place via relatively low power radio transmissions between the terminal 4667 and the access device 4665 . However, communication can be achieved via a telephone jack link at the customer site, if: 1) the customer site blocks such transmissions; 2) the transmission range is exceeded; or 3) link costs or channel speed so justify.
- the terminal 4667 automatically activates inactive routing table entries (by setting a flag therein) corresponding to possible telephone jack links. Thereafter, communication attempts to either the vehicular or premises LAN will offer routes via the customer's telephone jack link.
- FIG. 47 a is a flow diagram which more specifically illustrates the functionality of the access servers of FIGS. 46 a - b in handling data, processing and routing requests.
- an access server awaits incoming communications which take the form of several types of previously mentioned requests such as data, object, processing, migration and routing requests.
- the access server awaits the need to perform migration evaluation and processing, i.e., a time out period to lapse which occurs once every fifteen (15) minutes. This period may be modified (lengthened or shortened) as proves necessary depending on channel loading conditions.
- the access server Upon receiving a routing request as indicated at the event block 4703 , the access server accesses its routing table, at a block 4705 , in an attempt to identify the destination of the routing request in an upstream path. If the destination is identified, the access server forwards the routing request to the next network device in the upstream path toward the destination, at a block 4707 . Otherwise, if the destination is not identified in the routing table at the block 4705 , at the block 4707 the access server transmits the routing request to the next network device in the downstream path. Thereafter, the access server returns to the block 4701 to await another event.
- the access server upon receiving and logging a migration request, the access server vectors from an associated event block 4709 to determine whether it stores the requested migration information (e.g., the requested code or data or the program code and/or data associated with a processing resource migration request) locally or not at a block 4711 . If not, the access point branches to the block 4705 to identify the closest (or any) network device in the spanning tree pathway. For example, if the routing table carries no entries for the migration information, the access server routes the migration request to the next downstream network device. Otherwise, if the routing table carries only an upstream or a downstream entry, the access server routes the request as specified by the routing table. However, if more than one entry exists for the requested migration information, the access server routes the migration request along the lowest cost spanning tree pathway (as indicated in the routing table).
- the requested migration information e.g., the requested code or data or the program code and/or data associated with a processing resource migration request
- the access point branches to the block 4705 to identify the closest (or
- the access server determines that it stores the migration information locally, the access server: 1) retrieves the migration information and records the migration event for update control, at a block 4713 ; 2) accesses its routing table to identify the forwarding pathway, at the block 4705 ; 3) forwards the retrieved migration information, at the block 4707 ; and 4) returns to the block 4701 to await another event.
- the access server After receiving and logging (counting the occurrence of) a processing request at the block 4701 , the access server branches via an event block 4715 to determine whether the requested processing can be performed locally or not at a block 4717 . If not, the access server forwards the processing request at the block 4707 per routing table instruction at the block 4705 . Afterwards, the access server returns to await another event at the block 4701 .
- the access server determines that it can perform the requested processing at the block 4717 , the access server performs the processing at a block 4719 , generates a response at a block 4721 , routes the response back to the requesting network device at the block 4707 per routing table instruction at the block 4705 , and, finally, returns to the block 4701 to await another event.
- the access server Upon receiving and logging a data or code request at the block 4701 , the access server vectors via an event block 4723 to determine whether the requested data or code is stored locally at a block 4725 . If so, the access server branches to a block 4727 to retrieve the data or code from storage. Thereafter, the data or code is forwarded at the block 4707 per routing table instruction at the block 4705 . Once forwarded, the access server branches to the block 4701 to await another event.
- the access server determines whether it should migrate the data at a block 4729 .
- the access server analyzes the overall link cost, the size of the requested data or code, the frequency of such requests, available local storage resources (some of which it may determine to recapture by purging other locally stored data, code or processing resources).
- the access server determines the weighted average frequency of the requests for that data or code. The frequency is then multiplied by a predetermined fraction (50%) of the overall link cost for retrieving the data or object to the access server from the current source. The resulting number is then compared to a migration threshold number, for example “10”.
- the access server determines that the threshold number is greater than the resulting number, the access server, deciding not to migrate, branches to route the data/code request per routing table instruction at the blocks 4705 and 4707 .
- the access server decides to migrate.
- the access server creates and sends a migration request (instead of merely forwarding the data/code request) and awaits delivery of the requested code or data.
- the access server stores the data or code. Thereafter, the data/code is retrieved at the block 4727 for routing to the requesting network device via the blocks 4705 and 4707 . Once routing is complete, the access server again returns to the block 4701 to await another event.
- the access server branches to execute migration procedures at a block 4737 , as described in more detail below.
- FIG. 47 b is a flow diagram utilized by the access servers of FIGS. 46 a - b to manage the migration of data and program code from a source storage and/or processing device toward an end-point device. More specifically, the exemplary flow diagram illustrates the migration and purging procedures represented by the block 4737 of FIG. 47 a.
- an access server Upon encountering a timeout event (occurring every 15 minutes), an access server begins the illustrated procedure of FIG. 47 b .
- the access server retrieves a data/code entry from its routing table for which it provides local storage.
- the current count recorded (indicating the number of requests for that data/code entry during the current time out interval) is multiplied by two thirds (2 ⁇ 3) and added to one third (1 ⁇ 3) the value of the previously recorded weighted frequency.
- the access server records the result as the new weighted frequency in the routing table entry. This weighting of frequency constitutes “aging” of the data/code routing table entry.
- a block 4755 fifty percent (50%) of the overall cost of the link, i.e., from the access server to another source of the locally stored data/code, is multiplied by the newly recorded weighted frequency.
- the access server compares the results of the multiplication with a hysteresis threshold at a block 4757 .
- the hysteresis threshold is also referred to herein as a purging threshold. In premises network locations, for example, the hysteresis threshold is set at five (5) units below the migration threshold of the block 4729 in FIG. 47 a .
- the migration and hysteresis thresholds may need be modified in alternate network embodiments, such as may be found in vehicular network installations.
- the access server determines that it should continue to store the data/code, and branches to a block 4759 to determine whether there are any remaining entries for locally stored data/code which have not yet been considered for purging. Alternatively, if the hysteresis threshold is not exceeded, the access server determines that the data/code item should be purged, and does so at a block 4761 . Thereafter, the access server branches to the block 4759 .
- the access server repeats the purging consideration of the blocks 4751 through 4759 until all locally stored data/code items have been considered. At that point, the access server branches to block 4763 to begin migration and purging consideration of processing resources.
- the access server retrieves a routing table entry relating to processing resources, i.e., supporting program code and any associated data.
- the access server ages the entry, i.e., performs the aforementioned weighted frequency averaging. Thereafter, fifty percent (50%) of the overall link cost is multiplied with the new weighted frequency at a block 4767 .
- the access server compares the results with the hysteresis threshold at a block 4771 . If above the hysteresis threshold, the access server continues to store the processing resources, branching to consider any remaining processing resource entries at a block 4775 . Otherwise, the access server purges the stored resources at a block 4773 before considering any remaining entries at the block 4775 .
- the access server determines whether it has been configured with the hardware necessary to perform the processing. If not, the access server branches to the block 4775 to consider other entries. Otherwise, at a block 4779 , the access server compares the migration threshold with the result, i.e., 50% of the link cost multiplied by the new weighted frequency. If the result does not exceed the migration threshold, the access server branches to the block 4775 to consider other entries. If the result exceeds the migration threshold, the access server formulates and routes a migration request for the processing resources, awaits the responsive delivery and stores the resources locally at a block 4781 , before branching to the block 4775 .
- the migration threshold i.e. 50% of the link cost multiplied by the new weighted frequency
- the access server determines that other processing resource entries have not been considered for purging or migration, it repeatedly branches back to the block 4763 to carry out the consideration cycle until complete. Thereafter, the migration/purging procedure ends, and the access point returns to the block 4701 of FIG. 47 a to await the occurrence of another event.
- FIG. 48 is a schematic diagram of the access servers of FIGS. 46 a - b illustrating an exemplary circuit layout which supports the functionality described in reference to FIGS. 47 a - b .
- a typical access server an access server 4801
- transceiver circuitry 4803 and associated antenna 4805 for participating in the premises, peripheral and/or wide area networks.
- another transceiver a transceiver circuit 4807 , and associated antenna 4809 might be added, for example, to support WAN or cellular communications.
- interface circuitry for other wireless or wired communication links may be included in the access server configuration when needed.
- Processing circuitry 4811 provides at least three processing functions for the access server by managing or performing: 1) communication processing functionality; 2) migration and purging; and 3) local resource processing. Although in most embodiments, the processing circuitry 4811 comprises a single microprocessor, it may comprise several. Moreover, if the processing circuitry 4811 is not configured to perform migration and local resource processing, the illustrated access device operates as an access point.
- the processing circuitry 4811 utilizes a memory 4813 for short term and long term bulk storage.
- the memory 4813 comprises hard drive storage, dynamic RAM (random access memory), flash memory, and ROM (read only memory). However, all other types of memory circuits or devices might alternately be used.
- circuit/device block 4815 Specific hardware configurations needed to accommodate specialized processing requests are represented by a circuit/device block 4815 . However, such hardware need not be present to service relatively basic processing requests. Additionally, access servers may either be battery powered although, if the network configuration permits, AC (alternating current) power is preferred.
- AC alternating current
- FIG. 49 a is a specific exemplary embodiment of an access server in a multi-hop communication network utilized for remote processing of 1-D (one dimensional) or 2-D (two-dimensional) code information.
- a code reader 4901 is used to capture and transmit code information for further processing, including decoding, by a remote access server in a premises LAN.
- a user brings the code reader 4901 , which preferably is a CCD (charged coupled device) type reader, into a reading relationship with a 2-D code 4903 located on a container 4905 .
- Light reflected from the code 4903 is received by the code reader 4901 and directed onto the CCD located within the reader to “capture” the code image.
- CCD charged coupled device
- the reader may first be necessary for the reader to focus the image on the CCD.
- Such focusing can, for example, be performed by conventional techniques known in the camera art.
- one or more spotter beams are presently used to ensure that the user is holding the reader the proper distance from the code to enable the CCD to properly capture the image.
- the code image may then be digitized within the reader to create a digital signal representative of the code image, which is then transferred, via RF transmissions, to other network devices for further processing.
- the reader 4901 may transmit a modulated analog signal representative of the code image to other network devices for further processing.
- the code reader 4901 forwards the code image signal downstream in the premises LAN to the first access server in the network that has the capability of decoding the signal into the usable information represented by the code 4903 .
- any one or all of the access devices 4907 - 4913 may be an access server and contain the digital signal processing circuitry necessary to decode the code image signal.
- the network may be designed such that the access device 4907 is an access server which performs decoding for all code readers, such as the code reader 4901 , being used in a designated area. If, however, the access device 4907 is merely an access point, or is an access server but does not have decoding capability, then the access device 4907 relays the code image signal downstream.
- the code reader 4901 sends a processing request downstream to the access device 4907 . If the access device 4907 is an access point, the processing request is simply relayed downstream to the access device 4909 . If the access device 4907 is an access server, it looks up in its table to determine whether it has the capability to perform the type of processing requested, i.e., decoding. If it does, the access device 4907 sends an acknowledge and the code reader 4901 forwards the code image signal to the access device 4907 for decoding. Once decoded, the information may be re-transmitted to the code reader 4901 for display on a screen (not shown).
- the access device 4907 may send a good read signal to the code reader 4901 to indicate to the user that the reading operation has resulted in a valid reading.
- the decoded information may also be transmitted to a host computer 4915 or other network device for further processing.
- access device 4907 If the access device 4907 does not find decode capability listed in its table, it forwards the processing request downstream to access device 4909 . Likewise, if access device 4909 is an access point or an access server without decode capability, the processing request is forwarded downstream to the access device 4913 .
- access device 4913 Once access device 4913 receives the processing request, it also examines its table to determine whether it, or any device upstream of it (such as, for example, access device 4911 ), has the capability to service the processing request. If it does locate such capability, it sends an acknowledge upstream to the code reader 4901 which forwards the code image signal to the access device 4913 for decoding thereby or for routing to the upstream access device having that capability.
- the access device 4913 If the access device 4913 does not locate decode capability in its table, it forwards the processing request to host computer 4915 for decoding thereby or so that the host computer 4915 can locate a device having the capability to service the processing request.
- the network could be configured such that each one of the access devices 4907 - 4913 is an access server having the circuitry necessary for decoding.
- CCD type code reader is preferred with respect to the embodiment of FIG. 49 a
- other types of code readers including laser scanners
- the decoding circuitry may house such decoding circuitry and may transmit decoded data to external network devices for further processing.
- the code reader 4901 may house such decoding circuitry and may transmit decoded data to external network devices for further processing.
- there are many advantages to placing the decoding circuitry external to the code reader 4901 For example, because the code reader is a portable device and likely battery-powered, power conservation as well as reader size and weight become important design considerations.
- the reader uses less power and may be smaller and lighter than if the decode circuitry is placed in the code reader 4901 . Further, in an environment where numerous code readers are used, placing the decode circuitry in one or a few external devices rather than all readers, which are often dropped by users, reduces the chances that the decode circuitry will be damaged. In addition, such a configuration reduces the amount of circuitry used and consequently results in lower reader manufacturing costs.
- code reader 4929 is configured to collect signature, printed text and handwriting images for further processing. Although further processing can be performed onboard within the reader 4929 , in one embodiment it occurs within an access server.
- processing first involves the identification of the type of information contained within the image. If the user does not simplify the process by identifying the type of image captured, automatic identification is invoked. This occurs by first attempting to identify the image as a 2-D code. If this fails, the processing involves an attempt at character recognition to identify any printed text that might exist within the image. If no text is found, an analysis is performed to determine whether the image is a handwritten signature. Finally, if all else fails, the image is generically classified as a picture. Several examples of pictures include: a) images of bakery shelf space in a given store for subsequent collection and evaluation of ones competition; b) images of broken equipment for transmission to remote experts for service advice; and c) images of metering or monitoring displays for billing or usage verification.
- each type of data receives yet further processing.
- Decoded 2-D code information is forwarded and acknowledged.
- Handwritten signatures are compared with known authentic counterparts.
- Other types of images may be associatively forwarded, stored, displayed and/or acknowledged.
- FIG. 49 b is an alternate embodiment of FIG. 49 a wherein communication between the 2-D code reader and the access devices takes the form of modulated infrared transmissions.
- a user uses a code reader 4917 to read a 2-D code 4919 on a container 4921 .
- the user points the code reader 4917 at an infrared transceiver 4923 of an access device 4925 and transmits a processing request to the access device 4925 using infrared transmissions.
- the reader may disperse its transmissions, say, for example, four inches over a distance of ten feet.
- the infrared transceiver 4923 may be, for example, a phototransistor/photodiode pair.
- the processing request is simply relayed downstream, via either RF or infrared transmissions, to a further access device downstream.
- the access device 4925 is an access server, it looks up in its table to determine whether it has the capability to perform the type of processing requested. If it does, the access device 4925 sends an acknowledge via infrared transmissions to the code reader 4917 and the code reader 4917 forwards the code image signal to the access device 4925 via infrared transmissions for decoding. The access device 4925 may then transmit the decoded information to the code reader 4917 for display on a screen and/or forward the decoded information to a host computer 4927 for further processing.
- the access device 4925 forwards the processing request to one of the access devices 4924 , 4926 , or 4928 to locate such decoding capability similarly as discussed above with respect to FIG. 49 a .
- the code reader via infrared transmissions, performs a batch forwarding of the stored image data to the access device 4925 for eventual decoding by one of the access devices 4924 , 4926 , or 4928 or by a host computer 4927 or another device in the premises LAN (i.e., whichever is the first device located that has the decoding capability).
- communication between access devices may be achieved using either RF or infrared transmissions.
- a user may choose to directly communicate with any specific access device in the network simply by pointing the code reader 4917 at that device and transmitting a processing request.
- FIG. 49 c is an alternate embodiment of FIG. 49 a wherein indirect communication between the 2-D code reader and the access servers takes place via holstering or docking access servers.
- a user uses a code reader 4929 to read a 2-D code on a container. The user then places the reader 4929 in a holster access device 4931 . The user may support the holster access device 4931 by a shoulder strap 4933 and belt 4935 to facilitate portability.
- the holster access device 4931 may be configured to perform decoding so that when the code reader 4929 is placed inside the holster access device 4931 , the code reader 4929 may transmit the code image data to the holster access device 4931 for immediate decoding thereby.
- the holster access device 4931 does not house the necessary decoding circuitry, the holster access device 4931 transmits a processing request downstream to one of access devices 4937 - 4943 to locate such decoding capability similarly as discussed above with respect to FIG. 49 a.
- the code reader 4929 may store the read image data and perform a batch transmission to the holster access device 4931 for immediate decoding thereby if the holster access device 4931 is configured with decoding circuitry.
- the code reader 4929 transmits a processing request to the holster access device 4931 via infrared transmissions.
- the holster access device 4931 in turn forwards the processing request downstream via RF transmission to one of the access devices 4937 - 4943 to locate such decoding capability similarly as discussed above with respect to FIG. 49 a .
- the code reader via the holster access device 4931 , performs a batch forwarding of the read image data for eventual decoding by one of the access devices 4937 - 4943 or by a host computer 4947 or another device in the premises LAN (i.e., whichever is the first device located that has the capability).
- batch transmission of stored image data may be performed via a docking access server 4949 .
- a user When a user has completed his code reading tasks, he docks the code reader 4929 in a bay 4951 of the docking access server 4949 .
- Other users when their tasks are completed, may similarly dock their code readers in other bays of the docking access server 4949 .
- the code reader similarly as discussed above with respect to the holster access device 4931 , once a code reader is docked in the docking access server 4949 , the code reader performs a batch transmission of its stored code image data to the docking access server 4949 for immediate decoding thereby if the docking access server 4949 is configured with decoding circuitry.
- the code reader 4929 transmits a processing request to the docking access server 4949 via infrared transmissions.
- the docking access server 4949 in turn forwards the processing request downstream via RF transmission to one of the access devices 4937 - 4943 to locate such decoding capability similarly as discussed above with respect to FIG. 49 a .
- the code reader via the docking access server 4949 , performs a batch forwarding of the stored image data for eventual decoding by one of the access devices 4937 - 4943 or by a host computer 4947 or another device in the premises LAN (i.e., whichever is the first device located that has the decoding capability).
- FIG. 50 is a schematic diagram similar to that shown in FIG. 48 which illustrates the circuit layout used in an access server of FIG. 49 to process the 2-D code information.
- a processing circuitry 5003 manages 2-D code processing functionality as indicated by a block 5005 .
- migration processing functionality is also present, in some embodiments such as those which use a single access server, the migration processing need not be present.
- the access point 5001 also stores a database of known 2-D images in an image database 5009 .
- digital signal processing circuitry 5011 has been added.
- the signal processing circuitry 5011 assists the exact decoding of 2-D images, and may also be used in the image comparison process of received 2-D images with the database 5009 of stored images.
- FIGS. 51 a - b are flow diagrams illustrating the operation of the 2-D code processing access servers of FIGS. 49-50 .
- the access server when the access server receives image data via its LAN transceiver, it first attempts at a block 5101 to exactly identify the code information from the received code image data. Specifically, the access server uses its code processing circuitry to perform an analysis of the received image data using a decoding algorithm specifically designed for decoding the type of code which was read.
- a decoding algorithm specifically designed for decoding the type of code which was read.
- the access server next determines whether the exact identification was successful at a block 5103 . Determining whether an identification was successful often depends on the type of code used. If enough redundancy is built into the code, then the loss of a number of bits of data resulting, for example, from a partially blurred image may not be fatal to a successful exact identification. If, on the other hand, the type of 2-D code being read is less “tolerant,” then even the loss of a single bit might result in a failed exact identification.
- the access server sends the identified code information to a predetermined destination for further processing, and acknowledges the successful identification. If the exact identification is not successful, however, the access point performs a further analysis of the image data to attempt to identify the corresponding code information.
- the access server compares the received image to stored images located in its image database and attempts to locate the closest or best match.
- grey scale considerations and image-shifting correlation techniques are contemplated, in a relatively simple embodiment, such a comparison involves a process of scaling the received image to correspond to the stored images, then performing an “exclusive OR” of the received image with the stored images. More exact matches will yield an overall sum value nearer to zero.
- the access point After the access point completes its comparison and has identified the closest or best match between the received image data and the stored images, the access point then determines at a block 5111 if the overall value resulting from the best match comparison is above a predetermined accuracy threshold. Such an accuracy threshold may vary depending on, again, the type of code that was read, and the level of importance associated with a good read. If the overall value is below the predetermined threshold, the access server, as above, sends the identified code information (corresponding to the best match stored image) at a block 5105 to a predetermined destination for further processing, and acknowledges the successful decode.
- a predetermined accuracy threshold may vary depending on, again, the type of code that was read, and the level of importance associated with a good read.
- the access server forwards a bad read or retry message to the code reader to indicate to the user to reread the code.
- FIG. 51 b is similar to FIG. 51 a except that the comparison of the received image with stored images is performed before any exact identification is attempted. Specifically, the access server first compares the received image to the stored images at a block 5115 , identifies the closest match at a block 5117 , and determines whether the overall value of the comparison is above a predetermined accuracy threshold at a block 5119 . If the overall value is below the threshold, the code information relating to the best match stored image is simply forwarded at a block 5121 to a predetermined destination for further processing.
- the access server attempts the exact identification and determines success at blocks 5123 and 5125 . If such exact identification is successful, then the access device forwards the code information at block 5121 . If it is not successful, the access device forwards a retry message to the code reader at block 5127 .
- FIG. 52 illustrates the structuring of 2-D code information so as to support a hierarchical recognition strategy as used by the access server of FIGS. 49-50 .
- each known image is stored and hierarchically organized in sections.
- Each section of image contains information relating to a specific category of information.
- images may include a main category followed by further and further subcategories.
- the image database stores all of the images in the main or first category at a top level in the hierarchy. Under each main category image, the image database stores only those subcategory images which coexist with the main category image on known complete 2-D code images. Similarly, under each subcategory image, the image database only stores sub-sub-category images which coexist with the main category image and the subcategory image.
- FIG. 53 is a diagram illustrating an exemplary 2-D code 5301 wherein the hierarchical structure of FIG. 52 is implemented. From left to right, top to bottom, the illustrated 2-D code provides image portions of categories separated by five bit line borders, such as a border 5303 . As shown, the main category image represents “grocery”. The subcategory represents “beans”, and so on for the further subcategories.
- the access server can more rapidly perform the process of image comparisons. For example, at a main category level in the hierarchy, a grocery image, an office supply image and general merchandize image might be the only three types of main category images known to the access point. If after comparing the received and the stored main categorization images, no acceptable match is found, the attempted comparison ends without ever having to compare the remainder of the potentially thousands of remaining images stored in the image database. Similarly, if a main level match is found with the stored office supply image, no comparison need be made with the plethora of remaining images under the grocery image main category.
- FIG. 53 is not necessarily a current 2-D code standard, the principle of hierarchical organization can be utilized in current 2-D code standards to take advantage of the image comparison efficiencies involved.
- FIG. 54 is a flow diagram illustrating the functionality of the access server of FIGS. 49-50 in carrying out the hierarchical recognition strategy of FIGS. 52 and 53 .
- the access server begins the hierarchical image comparison process, and, at a block 5401 , extracts from the received 2-D image a first subcategory image portion, i.e., the main category image indicating “grocery” for example.
- the access server compares the extracted image with each of the main category images stored in the image database. If the closest comparison fails to fall within an accuracy threshold at a block 5405 , the access server indicates that the comparison has failed at a block 5407 , and ends the process.
- the comparison process continues with the access server checking to see if there are any further subcategories at a block 5409 . Because other subcategories exist, the access point branches to repeat the process beginning at the block 5401 . This time, the access server extracts from the received image the image portion relating to the first subcategory (beans) for comparison at the block 5403 with only those first known subcategory images having “grocery” as the main category.
- the access point Again if no match within the threshold is found, the access point vectors to indicate failure at the block 5407 , and terminates the process. However, if a subcategory match is found, the access point branches to handle the sub-sub-category in a similar way. If, at the block 5409 after successfully repeating the comparison a number of times, the access point concludes that there are no further subcategories to compare, the access point delivers the 2-D code information stored in the image database and associated with the matching stored image, and successfully ends the code identification process.
- the known image database is supplemented by exact decoding as illustrated for example in FIG. 51 b , wherein any successful exact decode is used to provide both categorized image and information portions for subsequent decoding through comparison.
- exact decode is used to provide both categorized image and information portions for subsequent decoding through comparison.
- hierarchical structuring described herein offers many advantages, it need not be implemented to carry out the comparison process.
- FIG. 55 a is a diagram illustrating the overall flow of both data and voice through another embodiment of the hierarchical communication network of the present invention.
- a premises network associated with a premises 5501 comprises a hardwired backbone LAN 5503 and a wireless network of access devices 5505 , 5507 , 5509 , 5511 and 5513 .
- the backbone LAN 5503 preferably comprises a coaxial or twisted-pair ethernet link, it may alternately constitute, for example, a token ring, fiber optic, infrared, serial or parallel link.
- a variety of network devices also participate in the premises network.
- Computers 5515 and 5517 , the access device 5505 and a telephone access device 5519 directly participate in the backbone LAN 5503 .
- Mobile terminals 5521 , 5522 and 5523 and stationary phone 5525 also participate wirelessly via any of the access devices 5505 , 5509 , 5507 , 5511 and 5513 which happen to be within range.
- a wireless phone 5527 is configured to communicate with an independent radio channel associated with the access device 5507 .
- the access device 5507 is configured with a second radio transceiver for that purpose.
- Stationary phones 5529 , 5530 , 5531 and 5533 indirectly participate in the premises network via hardwired links to the telephone access device 5519 , the computers 5515 and 5517 and the access device 5511 , respectively.
- telephone lines 5535 , 5536 , 5537 , 5539 and 5541 provide dedicated communication links to conventional telephone switching networks for delivering voice or data to devices inside and outside of the premises 5501 .
- a vehicular network 5551 Associated with a vehicle 5557 , a vehicular network 5551 comprises an access device 5553 and mobile terminals 5555 and 5559 . Although not shown, other vehicular network devices such as printers, plotters, fax machines, etc., may also be located within the vehicle 5557 . Such other devices participate directly or indirectly on the vehicular network 5551 via wireless or hardwired interconnection.
- Devices within the vehicular network 5551 can communicate via a WAN having selective operation between the access device 5553 and the access device 5513 .
- both of the access devices 5553 and 5513 are configured with a higher power transceiver dedicated to WAN communications.
- communication between the vehicular and premises networks also occurs when the vehicle 5557 drives within range of the premises network. At that point, the vehicular network effectively merges with the premises network for free communication flow between the two networks.
- the devices within the vehicular and premises network store non-critical messages and information destined for devices within the other network until they are in range and merged. Critical messages and information may be immediately communicated via the relatively higher cost WAN.
- a stationary phone 5563 may communicate via a telephone line 5565 (and associated telephone switching network) to the various network devices participating in the premises or vehicular networks.
- a wired and wireless network also exists.
- An access device 5573 participates in a wireless network and in a hardwired backbone LAN 5575 .
- a telephone access device 5577 participates on the backbone LAN 5575 , providing access to and from a telephone line 5579 .
- a mobile terminal 5581 participates in wireless communication with the access device 5573 .
- the network at the remote site 5571 can be communicatively coupled to the overall network at the premises 5501 .
- data is segmented into packets (herein “data packets”) which are routed per spanning tree table specification through the wireless network and backbone LAN 5503 .
- Data is also routed as need be through a conventional telephone switching network (not shown) via the telephone lines 5535 , 55 . 36 , 5537 , 5539 , 5541 and 5579 .
- Data routed through the telephone switching network takes the form of a serial data stream using commonly known hardwired modem technology.
- Voice signals are similarly routed.
- Voice or other audio signals traveling through the wireless pathways of the premises network typically flow in a digital, packetized form (herein “voice packets”).
- voice signals in an analog form may also be modulated and transmitted in a non-packetized form such as with communication between the wireless phone 5527 and the access device 5507 .
- Voice signals travel through the wired backbone LAN 5503 are also packetized, i.e., they travel in voice packets.
- Voice signals traveling through the telephone switching network may either remain in a continuous, non-packetized form (herein a “voice stream”) as captured, for example, by a microphone, or be routed as voice packets using known modem technology.
- the option used here is dependent on the form of the voice signals upon entering the telephone switching network, and the desired form of the voice signals upon exiting the telephone switching network.
- voice signals flowing between the telephones 5531 and 5563 take the form of a voice stream, because both of the telephones 5531 and 5563 capture voice in and attempt to reproduce voice from a voice stream form.
- voice signals flowing between the mobile terminals 5521 and 5581 take the form of voice packets while traveling through the telephone switching network via the telephone lines 5579 and 5539 .
- a voice stream might be used, it is not preferred in this configuration because the mobile terminals 5581 and 5521 both communicate voice signals in a voice packet form. Converting between forms (and back again) along this pathway offers little value.
- the mobile terminal 5523 transmits a call route request packet which includes the identity of the destination device, the telephone 5563 .
- the access device consulting its routing table, concludes that it does not have a telephone line pathway (or any other pathway) to the telephone 5563 .
- the access device 5513 sends the request toward the root access device 5505 , i.e., to the access device 5509 .
- the access device 5509 consults its routing table, discovers that it has access to the telephone line 5541 and records the availability of the telephone line 5541 in the route request packet.
- the access device 5509 transmits the route request packet toward (and to) the root access device 5505 .
- the root device 5505 consults its routing table yet identifies no lower cost telephone line access than that provided by the access device 5509 as was previously recorded in the route request packet. Therefore, the root access device 5505 converts the route request packet into a reply packet and forwards it back to the terminal 5523 via the access devices 5509 and 5513 .
- the terminal 5523 Upon receipt of the reply packet, the terminal 5523 offers to the user and/or software of the terminal 5523 the telephone line routing pathways (in this case only one) identified in the reply packet. Upon selecting the offered pathway, the terminal 5523 sends a call setup packet to the access device 5513 which forwards the setup packet to the access device 5509 . Upon receipt, the access device 5509 must determine from the setup packet whether the destination of the call expects a voice stream or voice packet transfer. If the setup packet indicates a destination identifier which is not the telephone number being dialed, the access device 5509 will use voice packet transfer. Alternatively, which is the case in this example, the setup packet indicates that the destination identifier is the telephone number being dialed, and the access device 5509 concludes that it must send a voice stream.
- the access device 5509 interfaces between the mobile terminal 5523 and the telephone 5563 . Particularly, the access device 5509 dials the telephone number of the telephone 5563 . If a busy signal is detected, the access device 5509 hangs up, and delivers a busy message to the mobile terminal 5523 via the access device 5513 . If a ringing signal is detected, the access device 5509 sends a ringing message to the mobile terminal via the access device 5513 . Upon detecting a pickup, the access device 5509 delivers a connect message to the mobile terminal 5523 . The mobile terminal 5523 may then begin sending voice packets to the access device 5509 . Similarly, a voice stream from the telephone 5563 arrives at the access device 5509 .
- the access device 5509 In addition to providing call setup assistance, the access device 5509 also assists in conversion between voice stream and voice packet forms. Specifically, the access device queues up the voice packets received from the mobile terminal 5523 then begins converting them through a digital to analog conversion process into a voice stream form which it delivers to the telephone 5563 . Upon receiving the voice stream, the telephone 5563 reproduces the voice which originated from mobile terminal 5581 .
- the access device 5509 also receives the voice stream from the telephone 5563 and begins converting it through an analog to digital conversion process into a sequence of voice packets. As the voice packets are generated, they are routed toward the mobile terminal 5523 . Upon receipt of the voice packets, the mobile terminal 5523 queues up the packets then performs a digital to analog conversion process to generate a voice stream. The mobile terminal uses the generated voice stream to reproduce (via a speaker) the voice which originated at the telephone 5525 . Further detail regarding this process can be found below.
- the circuitry for converting voice signals between the voice stream and voice packet forms can be found in the telephone access devices 5519 and 5577 , mobile terminals 5521 , 5523 , 5555 and 5581 , computer 5517 , telephone 5525 and access devices 5507 , 5509 , 5511 and 5553 .
- the circuitry for handling basic call setup and processing hereinafter “call processing circuitry”, can be found in the access devices 5507 and 5509 and the telephone access devices 5519 and 5577 .
- the mobile terminals 5522 and 5559 communicate in a manner similar to the wireless phone 5527 , i.e., they communicate voice signals in a voice stream form (e.g., through microphone pickup, amplification, modulation and transmission without packetization) on a communication channel preferably independent of colocated packet-based communication channels.
- the access devices 5507 , 5511 and 5553 are configured to not only participate on the packetized communication channel(s), but also to participate in voice stream exchanges with the mobile phone 5527 , mobile terminals 5522 and 5559 , respectively.
- voice communication with the mobile terminal 5559 typically requires assistance from the access device 5553 .
- assistance involves packetizing voice streams received from the mobile terminal 5559 , and converting voice packets to voice streams for delivery to the terminal 5559 .
- the access device 5553 does not have to invoke its conversion circuitry when communicating voice to and from the terminal 5555 (unless, for example, the voice session involves communication between the mobile terminals 5555 and 5559 ).
- a voice stream flowing through a telephone switching network is still referred to herein as a voice stream.
- FIG. 55 b is a diagram which illustrates a summary of the various types of communication pathways that may be used for setting up voice sessions between a source and destination network device. For example, nearly all of the pathways shown in FIG. 55 a can be summarized with reference to FIG. 55 b.
- Network devices such as mobile terminals or telephones, are typically capable of operating as a source device (a call origination point) or a destination device (a call destination point).
- a source device a call origination point
- a destination device a call destination point
- the “source” and “destination” designations merely identify which of the network devices originates the call and which device receives the call.
- a source device 5583 may establish a voice session with a destination device 5585 via a variety of types of pathways should such pathways be available. However, many of the types of pathways require the assistance of conversion circuitry when conversion between voice packets and voice streams is required. Many types of pathways also require call processing circuitry for interfacing with telephone switching networks.
- a network device which only captures and transceives voice streams can communicate with any other such device without assistance so long as the pathway between the two provides-voice stream transport, and the two devices have access to a protocol for establishing the voice session.
- a network device which only captures and transceives voice streams can communicate with any other such device without assistance so long as the pathway between the two provides-voice stream transport, and the two devices have access to a protocol for establishing the voice session.
- the source and destination devices 5583 and 5585 are both conventional telephones that use the telephone switching network 5596 for call setup and voice stream routing.
- the hardwired link 5598 may not be sufficient if the hardwired link 5598 also operates pursuant to another protocol, such as a packet-based TCP/IP, for example, which may or may not require the sharing of the hardwired link 5598 with other network devices. If such is the case, assistance to the two telephones also involves capturing full use of the hardwired link 5598 (through a request for a full bandwidth voice session), or adapting the voice stream into a form which may be transferred over the hardwired link 5598 .
- another protocol such as a packet-based TCP/IP
- any level of assistance needed by the source and destination devices 5583 and 5885 is provided by corresponding assisting access devices 5587 and 5589 .
- the source device 5583 is a conventional device such as a typical telephone, it requires the assistance of an access device 5587 to establish a voice session via a packet-based wireless link (or network) 5597 .
- Such assistance involves both the use of conversion circuitry in the access device for adapting to the packet-based requirements of the wireless link 5597 , and use of call processing circuitry to establish the call through the wireless link 5597 .
- the source device 5583 is configured with conversion and call processing circuitry, the assisting access device 5587 would not be needed.
- the destination device has conversion circuitry, the assisting access device 5589 is also not needed.
- the dashed line borders surrounding the assisting access devices 5587 and 5589 are representative of the fact that they may or may not be needed depending on the nature of the pathway and the nature of the source and destination devices 5583 and 5585 .
- the pathway for communicating between the source device 5583 and its assisting access device 5587 may involve: 1) a telephone switching network 5590 ; 2) a hardwired link 5591 , such as an ethernet LAN, RS232, or telephone wire connection; or 3) a wireless link 5592 , involving, for example, cellular phone transmissions or shorter range, relayed or point to point voice stream transmissions such as may be found in typical wireless phone transmissions to its base unit.
- the assisting access device 5587 may assist in basic voice session setup and control. For example, to establish a voice session, the assisting access device 5587 may simulate a typical telephone switching system by delivering dial tones, performing touch tone detection and delivering destination ringing and busy signal indications to the source device 5583 . Moreover, if necessary, the assisting access device 5587 will adapt the analog audio/voice signals captured by the source device 5583 (i.e., the voice stream) for transport toward the destination device 5585 , and adapt received voice information for transport to the source device 5583 for playback.
- the source device 5583 i.e., the voice stream
- No assisting access device 5587 is needed, for example, where the source device 5583 has been configured to: 1) capture and adapt a voice stream into a packet-based form (via conversion circuitry) for transport to the destination device 5585 ; 2) adapt incoming voice packets from the destination device 5585 into a voice stream form (via conversion circuitry) for playback; and 3) generate and respond to call setup and session processing control.
- the pathway for communicating between the destination device 5587 and the assisting access device 5589 may involve: 1) a telephone switching network 5593 ; 2) a hardwired link 5594 ; or 3) a wireless link 5592 .
- the assisting access device 5589 may also assist in basic voice session setup and control by, for example, simulating a typical telephone switching system.
- No assisting access device 5589 is needed, for example, where the destination device 5585 has been configured to: 1) adapt captured audio/voice signals for packet-based transport via the communication network toward the source device 5583 ; 2) adapt incoming audio/voice packets into an analog form for playback; and 3) generate and respond to call setup and processing control packets.
- FIG. 56 a illustrates an embodiment of the conversion and call processing circuitry contained within a computer card 5601 (preferably a PCMCIA card although IDE, PCI, etc. type cards might alternately be used).
- the computer card 5601 plugs into a host device such as an access device or computer. Through plugging the card 5601 into the host device, the control and data bus 5613 of the card becomes available to the host device's processing unit.
- the host device is loaded with configuration, maintenance and device driver software.
- the configuration software is used to configure the card 5601 to operate in different configurations such as is illustrated in FIG. 55 a or 55 b .
- the computer card 5601 when installed in the computer 5515 , the computer card 5601 must be configured to function with a conventional telephone, the telephone 5530 of FIG. 55 a , in a line sharing arrangement.
- the dual-line phone 5531 associated with the computer 5517 receives a similar software configuration but does not require a line sharing arrangement.
- the maintenance software permits the user of the host device to add or modify instructional voice messages to be delivered, and (as will be discussed in reference to FIG. 63 below) various telephone numbers of remote sites with cross-referenced internet addresses in a cross-reference database.
- the telephone 5530 ( FIG. 55 a ) connects to a switching circuit 5607 via a phone input line 5603 .
- a telephone switching network also attaches to a switching input line 5605 of the switching circuit 5607 via the telephone line 5536 ( FIG. 55 a ).
- the switching circuit 5607 senses a pickup of the telephone 5532 ( FIG. 55 a ) by monitoring the phone input line 5603 . Upon sensing the pickup event, the switching circuit 5607 communicates the event to a control processing circuit 5609 . The control processing circuit 5609 responds by directing the delivery of a dial tone through the switching circuit 5607 to the telephone 5532 ( FIG. 55 a ) attached to the phone input line 5603 .
- the switching circuit 5607 After delivering the dial tone, the switching circuit 5607 waits for a number to be dialed. The switching circuit 5607 forwards the received dialed digits to the control processing circuit 5609 . Upon receiving the phone number and through activation of the device driver, the control processing circuit 5609 sends the number along the control and data bus 5613 to the host device in which the computer card 5601 is plugged, in this case the computer 5515 ( FIG. 55 a ).
- the host device compares the received telephone number with the cross-reference database it stores. If the telephone number has an entry in the database, the host device will look to see if the user has indicated therein the desire to: a) always use the telephone switching network; b) always use an internet routing path; c) always attempt an internal routing path; or d) prompt the user each time a call attempted made. Otherwise, if no entry is found, the host device adds the number to the database with a “d)” type cross-reference, permitting the user to later modify the setting. Thereafter, the host device responds to the computer card 5601 per the cross-reference entry identified.
- the host device directs the control processing circuit 5609 to automatically dial the number on the telephone switching network via the switching input line 5605 , and then interconnect the lines 5605 and 5603 to permit a conventional telephone-based call setup and voice session to begin.
- the card 5601 attempts to establish an internet connection through the telephone switching network via the input line 5605 .
- an auxiliary input line 5604 is used to maintain continuous internet connectivity via a dedicated line to the telephone switching network. Further detail regarding this configuration and process can be found in reference to FIG. 63 below.
- the host device informs the control processing circuit 5609 to pursue a voice session through an internal route.
- the control processing circuit 5609 responds by attempting to setup a voice session with assistance from the host device. Specifically, upon identifying the need to gain access to the premises network on which the host device participates, the host device accesses the premises network to setup the call.
- the host device uses its own resources, i.e., its own ethernet card in the case of the computer 5515 , to establish and maintain the internally routed call.
- the control processing circuit 5609 provides call setup simulation (busy, ringing, hang up, etc. signals to the telephone 5530 ) and conversion processing as needed to establish and maintain the voice session.
- the host device If the host device identifies a “d)” type entry for the telephone number, the host device delivers a voice message through the conversion circuitry of the computer card 5601 and to the user of the telephone 5530 ( FIG. 55 a ) via the input line 5603 .
- the message prompts the user to select a desired pathway via touch tone entry on the telephone 5530 ( FIG. 55 a ), and permits the user to set that pathway as a permanent default.
- the user's selection is forwarded to the control processing unit 5609 which responds appropriately to the users request. For example, if the user selected the telephone switching network and requested that route be made a permanent option, the control processing circuit 5609 would route the call as described above as if the host identified an entry type “a)” in its cross-reference database. In addition, the control processing circuit 5609 forwards the request to the host device to change the entry to type “a)” for future calls.
- the host device and computer card 5601 interact to provide for any alternate configurations such as those illustrated in FIG. 55 a .
- the access device 5509 and the control processing circuit 5609 coordinate to service the routing of voice packets in a voice stream form through the telephone switching network attached to the telephone line 5541 .
- they coordinate to service routing of voice stream information from the telephone line 5541 into the premises network in a packet-based form.
- the host device and computer card 5601 can be merged into one package such as the telephone access device 5519 .
- the functionality of the host processing and control processing unit 5609 are merged.
- the telephone access device 5519 is also configured with an ethernet (10base2 or 10baseT) interface providing for internal routing through the premises.
- the computer 5515 can use the dialed number to establish a voice session through the premises network.
- the computer 5515 delivers a call setup request packet, which includes the dialed number, onto the backbone LAN 5503 ( FIG. 55 a ).
- the setup request packet is then routed through the spanning tree network to a destination device.
- control processing and switching circuits 5609 and 5605 are reset to await another event. Otherwise, voice mail recording begins after a tone delivered at the end of the voice mail prompt.
- the control processing circuit 5609 directs the switching circuit 5607 to interconnect the lines 5603 and 5611 .
- the control processing circuit 5609 also directs an A/D (analog to digital) conversion circuit 5621 to begin digitizing the voice message received via a subtraction circuit 5631 . Because the control processing circuit 5609 disables a D/A (digital to analog) conversion circuit 5625 during the digitization process, the subtraction circuit 5631 subtracts nothing from the incoming voice message. Thus, the entire voice message captured by the telephone 5515 ( FIG. 55 a ) is routed to the A/D conversion circuit 5621 .
- the A/D conversion circuit 5621 produces digital samples of the voice message, and delivers each sample to an output buffer 5623 .
- the control processing circuit 5609 interfaces with the computer 5515 ( FIG. 55 a ) via the loaded device driver to coordinate storage and delivery of the voice mail to the destination device as soon as delivery is warranted and possible.
- Groups of voice data are defined by a group identifier contained in each voice packet received.
- conversion circuitry which converts voice streams into voice packets adds group identifiers after identifying a group.
- the conversion circuitry monitors incoming voice streams for gaps in voice input, i.e., it attempts to identify the difference between captured speech and background noise.
- the conversion circuitry assigns a different (pseudo-random) group identifier to subsequent voice packets.
- the conversion circuitry assigns another group identifier to voice packets generated thereafter.
- control processing circuit 5609 For each group of data (each group of voice data extracted from voice packets having a common group identifier), the control processing circuit 5609 begins to wait the predetermined queuing time before beginning conversion. Thereafter, no queuing time is required until the next group of voice packets begin.
- the control processing circuit 5609 directs the delivery of the digital voice data from the buffer 5627 to a D/A conversion circuit 5625 at the same sampling rate used to generate the voice packets.
- the D/A conversion circuit 5621 From the voice data, the D/A conversion circuit 5621 generates an analog voice signal, i.e., a voice stream, representing the voice captured by the destination device.
- the voice stream is then delivered to the telephone 5530 (via a buffer 5629 , interconnect 5611 , switching circuit 5611 and the input line 5603 ) for listening by the user.
- the generated voice stream is also subtracted by a subtraction circuit 5631 from the combined voice stream signals on the interconnect 5611 .
- the voice stream sampled by the A/D conversion circuit 5621 for delivery to the destination device consists only of the voice signals captured by the telephone 5530 ( FIG. 55 a ).
- the buffer 5629 isolates the incoming voice stream from the incoming voice stream combined with the outgoing voice stream so that the subtraction process can be realized.
- the A/D conversion circuit 5621 converts the voice stream captured by the telephone 5530 ( FIG. 55 a ) into a digitally sampled form (voice data) which is packetized with routing information and a voice group identifier for delivery by the host device (the computer 1515 of FIG. 55 a ) to the destination device.
- each voice packet contains a 20 ms (millisecond) time period of compressed voice data samples.
- a received voice packet has a built-in 20 ms delay.
- a 200 ms queuing time is invoked before the first of such voice packets will be played back. This should ensure that 10 packets of a given group should be waiting at the destination for playback at any time, making it unlikely that any extraordinary delays associated with the routing of any one or several voice packets could result in an empty queue during attempted playback of the given group. So long as the overall delay, i.e., the voice packet delivery delay (as determined by round trip test packets sent during call setup) plus the 200 ms queuing time, do not exceed a predetermined threshold value of, for example, 500 ms, full duplex (two-way) voice communication should be possible with relatively unnoticeable delays.
- control processing circuit 5609 can disable full duplex communication by selectively inhibiting the output of the D/A conversion circuit 5626 and the input of the A/D conversion circuit 5621 to provide communication connectivity to only one speaker at a time, i.e., half duplex connectivity.
- Queuing times are identified during call setup and may be modified during the course of the call. Queuing should be as short as possible so that the parties involved cannot detect the overall delay. It should also be long enough to prevent detectable gaps in the reproduced voice signals during most channel loading conditions.
- the queuing time is generated from a combination of the maximum routing time expected between the source and destination devices less the nominal routing time, and that result plus a one hundred percent (100%) safety margin, i.e., twice the result.
- routing times are fixed and based on overall channel characteristics (routing delivery times and variations thereof) established during network setup.
- routing times are calculated from round trip routing times of test signals transmitted between the source and destination during call setup (while the destination device is “ringing”). This embodiment is preferable where routing time shows little variation throughout a calling session. If routing times vary much over the course of a single calling session, in a third embodiment, round trip test signals are interspersed with voice packets and decisions made regarding queuing times and full or half duplex considerations are reevaluated for further voice session support.
- the control processing circuit 5609 Upon receiving an incoming call from the telephone switching network via the switching input line 5605 , if not in use, the control processing circuit 5609 first attempts to identify the type of call incoming. If it is a facsimile or modem transmission destined for the host device, the control processing circuit 5609 directs the switching circuit 5607 to interconnect the line 5605 with a modem/fax processing circuit 5633 .
- the control processing circuit 5609 and switching circuit 5607 deliver a busy signal onto the line 5603 , and deliver a ringing message packet along the line 5605 .
- the switching circuit 5607 detects a pickup on the line 5603 , a connect message packet is delivered onto the line 5605 to the sending device.
- the voice stream delivered via the phone input line 5603 is converted as described above into a voice packet form for delivery via the switching input line 5606 to the source device.
- the voice packets received along the line 5606 are processed by the conversion circuitry (as described above) and delivered onto the phone input line 5603 .
- the voice packets are relayed by the host device for further routing, e.g., the computer 5515 receives the voice packets to route them onto the backbone LAN 5503 .
- the control processing device 5609 will direct the switching device to deliver a ring signal onto the line 5603 .
- the switching circuit is directed to interconnect the lines 5605 and 5603 for the duration of the voice session.
- modem and facsimile transmissions originating from the host device are received and processed by the modem/fax processing circuit 5633 for routing through the switching circuit 5607 to the telephone switching network via the line 5605 .
- Voice messages delivered to the user are stored in a digital form by the host device.
- the control processing circuit 5609 interacts to load the voice messages into a buffer 5627 as they are needed.
- the control processing circuit 5609 also directs the D/A conversion circuit 5625 to begin converting the digital messages into a voice stream for delivery via the buffer 5629 and the switching circuit 5607 to either the line 5603 or 5605 .
- the same circuitry and functionality are contained within the telephone access device 5577 .
- the device 5577 is shown having no telephone connected thereto. In such configurations, the telephone access device 5577 acts only as an access device from the telephone line 5579 into and out of the remote premises.
- Each of the access devices 5507 , 5509 , 5511 and 5553 also contain a computer card such as the computer card 5601 .
- the access device 5507 provides communication pathways via: 1) the telephone line 5539 ; 2) the wireless network via the access device 5505 ; 3) the mobile terminal 5521 via a first transceiver serving the wireless network; and 4) the wireless phone 5527 via a dedicated, second transceiver.
- the access device 5509 provides pathways via the telephone line 5541 and a transceiver servicing the wireless network.
- the access device 5511 illustrates that a telephone 5533 can be attached to the card 5601 to provide access through the wireless network to any local or remote device, without having direct access to the telephone switching network.
- FIG. 56 b illustrates an alternate embodiment of the conversion circuitry of FIG. 56 a wherein instead of using an analog subtraction process to separate outgoing voice signals from the combined incoming and outgoing signals, a digital subtraction process is used (at a subtraction circuit 5653 ).
- a delay element 5651 is shown to compensate for the D/A and A/D conversion time pathway via circuits 5625 and 5621 respectively.
- the telephone 5525 is configured to receive PCMCIA cards into slots 5705 .
- the PCMCIA card 5707 is a radio transceiver card which provides wireless access from the telephone 5525 to the access device 5509 ( FIG. 55 a ).
- an ethernet PCMCIA card may be added for direct ethernet connectivity to, for example, the backbone LAN 5503 ( FIG. 55 a ).
- the telephone 5525 provides a semi-stationary source for placing phone calls inside or outside of the premises without requiring new telephone line wiring. It also avoids incurring charges associated with other conventional mobile phone services.
- FIG. 58 is a schematic block diagram which illustrates the implementation of one embodiment of the conversion circuitry within the telephone 5525 of FIGS. 55 and 57 .
- a control processing circuit 5801 functions as described above in reference to FIG. 56 a with one significant difference—there is no need for a subtraction circuit. This is because the control processing circuit 5801 already has access to the outgoing voice stream separate from that incoming.
- Incoming voice streams via the jack 5701 are delivered (along with outgoing voice streams captured by a microphone 5805 ) to a speaker 5807 and to the other calling party.
- a microphone/phone processing circuit 5809 manages the call processing and delivers the outgoing voice stream per direction from a control processing circuit 5801 .
- the processing circuit 5801 directs an A/D conversion circuit 5817 to process the outgoing voice stream.
- the resultant voice data is stored in an output buffer 5819 in a voice packet form.
- the control processing circuit 5801 can direct the delivery of the voice packets onto an ethernet LAN, telephone switching network, wireless network, etc., depending on the nature of the PCMCIA card(s) installed.
- an input line 5811 to a PCMCIA card or cards (see FIG. 57 ) incoming voice packets can be delivered via a media defined by the attached PCMCIA card(s).
- the control processing circuit 5801 also maintains a direct interface with the attached PCMCIA cards to provide appropriate routing, call setup and control as proves necessary.
- a D/A conversion circuit 5815 begins converting the queued data into a voice stream form. For half duplex communication, the conversion is delayed until any pending group of outgoing communication has finished. For full duplex (2-way) communication, the incoming voice stream is added to outgoing voice signals from the microphone 5805 for delivery to the speaker 5807 .
- a call request packet contains an identifier field—for storing a packet type indicator, a destination field—for storing a destination phone number, a base cost field—for indicating the routing cost incurred by the calling device to reach a current access device, and an internal call routing field—for storing the lowest cost routing pathway (along with its cost), if any, which does not use an outgoing telephone line, and an external call routing field—for storing the lowest cost routing pathway (along with its cost), if any, utilizing an outgoing telephone line.
- the access device Upon receiving a call setup request packet as indicated by the event block 5903 , the access device first attempts to find a lowest cost external routing pathway for the call. At a block 5917 , the access device consults its routing table to identify the lowest cost direct or upstream access to an available outgoing telephone line. If no access is found, the access device branches to begin internal call route processing. However, if an outgoing telephone line is identified, the access device determines whether to replace an external routing pathway stored in the external call routing field at a block 5919 .
- the access device compares the cost of the currently stored external routing pathway with the cost of the access device's own lowest cost external pathway at the block 5919 . If the access device has identified a lower cost external pathway, the access device replaces the current external call routing field entry (if any) with the lower cost pathway along with the associated cost at a block 5921 , and branches to a block 5923 to begin internal call route processing. However, if no phone line access is available or its cost is not lower, the access device branches immediately branches to the block 5923 for internal call route processing.
- the access device After considering the external routing pathway, the access device begins internal routing pathway processing at the block 5923 . Specifically, at the block 5923 , the access device determines whether the internal routing field contains an entry. If the field is empty, the access device attempts to identify a routing table entry for the telephone number of the destination device at a block 5925 . If a routing table entry is found, at a block 5927 the access device inserts the table entry along with the overall cost from the source to destination into the internal routing field. Thereafter, the access device branches to a block 5929 to begin either root processing or further forwarding. The access device also branches to the block 5929 if an entry is found in the internal routing pathway field at the block 5923 or a routing table entry is not found at the block 5925 .
- the access device considers whether it is a root device in the spanning tree. If it is not a root device, the access device increments the base cost field entry by the cost of reaching the next device in the pathway toward the root access device (as indicated by the cost entry in the routing table), routes the updated route request packet to the next device in the pathway toward the root, and returns to the idle state at the block 5901 . Otherwise, if the access device is a root device, the access device converts the call route request packet to a call reply packet (by changing the packet type indicator) at a block 5933 , and routes the reply packet back toward the source.
- the source device Upon receipt of the call reply packet, among other processing illustrated in reference to FIG. 60 below, the source device (the “calling device”) is offered the internal and external call pathway options (if available) for establishing the call.
- the source device may offer the user the pathway options, or, if so programmed, automatically select the most appropriate pathway for placing the call. Having selected a pathway from the offered options, the source device generates a call setup packet and routes it toward the destination.
- the access device Upon receiving a call setup packet as indicated at an event block 5905 , the access device responds at a block 5937 by first considering whether the access device has a direct link to: 1) the destination device—either a hardwired or wireless link; or 2) a telephone line which is to be used in the communication pathway to or toward to destination device. If neither direct link exists, the access device routes the call setup packet toward the destination per routing table specification at a block 5939 , and, thereafter, returns to the idle state at the block 5901 .
- the access device determines whether further processing assistance is required at a block 5941 .
- the access device identifies that the destination device is directly connected thereto, the access device consults its routing table to determine if the destination device requires call setup assistance.
- setup assistance by the access devices involves: 1) the dialing of destination devices connected via a telephone line of a telephone switching network to the access device; 2) the delivery of a ring signal to conventional destination devices connected directly to the access device via hardwiring, for example; 3) sending a ringing message back toward the source device; 4) detecting a pickup at the destination device; and 5) sending a pickup message toward the source device so that the call can proceed.
- the destination device is busy (“in use”), the access device sends a busy message toward the source device.
- the access device merely forwards the call setup packet to the destination device.
- the destination device Upon receipt, if not busy, the destination device sends a ringing message toward the destination, signals the user to answer the incoming call, and responds to a pickup by delivering a pickup message toward the source device. Otherwise, if busy, the destination device sends a busy message through the spanning tree network toward the source device.
- the audio signals must first be converted to a packetized form (i.e., a “call voice packet” form) and then reconstructed for playback.
- a packetized form i.e., a “call voice packet” form
- the access device converts the audio signals into voice packets, screens out all audio signals falling below a predetermined threshold level (to avoid the wasted bandwidth associated with the transmission of interleaving background noise), and forwards the call voice packets through the network.
- a source or destination device connected directly to a wired or wireless network will generate call voice packets for delivery through the network.
- the access device Upon receiving a call voice packet at the block 5901 as represented by the block 5907 , the access device first determines whether it has a direct link to the destination of the voice packet at a block 5937 . If so, the access device considers whether call processing assistance is needed at a block 5941 . If needed, the access device performs the processing assistance at the block 5943 . In particular, the processing assistance in this situation consists of converting the call voice packets back into an audio signal form (analog form) for delivery to the destination of the voice packets. In addition, as described in more detail below, the access device delays the audio signals for a predetermined queuing time before delivery to promote continuous delivery of the overall segment of captured voice.
- the call voice packets are routed toward the destination at the block 5939 . Thereafter, the access device reenters the idle processing state at the block 5901 .
- FIG. 60 is a flow diagram illustrating the functionality of a source device in the setup of a voice session. The flow diagram also applies to an access device assisting a source device in the setup of a voice session whenever such assistance is needed.
- the source device responds by first determining whether it has direct telephone line access to an outside public telephone switching network.
- Such access may be via a telephone line, through a direct wireless telephone link to a telephone base unit having telephone line access, or through a cellular radio.
- the source device offers the route(s) along with associated cost(s) to the user (or user software) for selection at a block 6003 . If such a route is selected, the source device branches to conventional call setup routines as indicated at a block 6007 .
- the source device if direct telephone line access is rejected or unavailable, the source device generates a call route request packet at a block 6009 . Thereafter, the source device routes the request packet toward the root device of the spanning tree at the block 6011 , and awaits a reply packet at a block 6013 .
- the source device Upon receiving the reply packet, at a block 6015 the source device examines the reply packet for voice session routing options. If no session options are available, the attempt is aborted at a block 6021 . If routing options are indicated, they are offered along with their associated costs at a block 6017 . If the user of the source device (or associated software) rejects the offered routes, the voice session is aborted as indicated at the block 6021 . If an offered route is accepted, the source device branches to perform call setup at the block 6007 .
- FIG. 61 is a flow diagram illustrating the functionality of the source device (or assisting access device) when performing call setup.
- the source device begins the setup functionality at a block 6101 . If the source device intends to deliver voice mail, as determined at a block 6103 , the source device prompts for the voice message and captures the message at a block 6105 . Once the voice message is captured, the source device waits at a block 6107 for a predetermined time period before attempting to deliver the captured voice message. During the wait, the source device may have queued up other voice messages such that they may all be processed in a time and money saving batch mode. In addition, while waiting, other voice sessions might be conducted, and, during such time, delivery of the captured and queued voice mail takes place.
- voice mail is treated no differently than any other voice session.
- delivery is periodically reattempted.
- the source device to deliver voice mail or establish a real-time voice session, at a block 6109 , the source device generates and routes toward the destination device a call setup packet at a block 6109 , with the pathway for the routing having been defined by one of the routing options previously offered and selected.
- the source device waits for a response regarding the attempted setup. If a busy message is received, the source device concludes that the path is currently unavailable at a block 6113 , and delivers a busy signal to the user of the source device at a block 6115 . If the busy message results from a busy destination device, the source device concludes that no other pathway need be considered at a block 6117 , and ends the session setup attempt at a block 6119 .
- the source device considers whether other pathways are available at the block 6117 through analysis of the previously received reply packet. If other pathways exist, the source device offers such other routes at the block 6130 to the user. If selected, the source device repeats the processing of the blocks 6103 - 6117 until either no other voice session paths are available, or the destination device or assisting access device responds with a ring message packet.
- an available destination device responds by delivering a ring signal to the user, and by generating and routing a ring message packet toward the source device.
- the destination device Upon call pickup, the destination device (or assisting access device) generates and routes a connect packet toward the source device.
- the source device responds in one embodiment at a block 6121 by attempting to adjust the queuing time of the audio information received. This is accomplished by sending a series of round trip test packets which are sent from the source to the destination and back while ringing is taking place so as to identify the approximate delay time of the network.
- the overall queue time consists of a worst case relay time plus a tolerance factor generated through statistical analysis of the mean and median of the test packet round trip times. However, in an alternate embodiment, a predetermined default queue time is selected, and no test packets are delivered.
- the source device delivers a ringing signal to its user, indicating that the destination device is ringing. Thereafter, if the user of the source device happens to hang up, the voice session attempt ends at a block 6127 . Otherwise, the source device continues to indicate ringing at the destination device until a connect packet is received. Upon receipt of the connect packet, the source device concludes that the destination device has answered the call at a block 6128 and branches to begin voice session processing at a block 6129 , as further described below in reference to FIG. 62 .
- FIG. 62 is a flow diagram illustrating ongoing voice session processing performed by a source device (or its assisting access device if needed) and destination device (or its assisting access device if needed).
- the destination device (or its assisting access device) enters the idle state 6201 .
- the source device Upon receiving the connect message, the source device also enters the idle state at a block 6201 .
- Any device waiting in an idle state at the block 6201 responds to several types of ongoing call processing events. If a voice packet is received as indicated by a block 6203 , the device queues up the incoming digital voice data contained within the voice packet, and thereafter returns to the idle state.
- the device must consider whether full duplex operation is possible or not. To do so, at a block 6213 , the device first determines whether a potential conflict with outgoing voice information might occur. If no outgoing transmission is in progress, the device evaluates whether the queuing time is greater than a predetermined threshold value at a block 6215 . If it is greater, only half duplex communication is desired because the delay between the generation and playback of the incoming voice information in queue is so long that it might be detectable by the listener.
- half duplex communication is preferred, therefore, at a block 6217 , an indication is provided to the user that half duplex communication being utilized, and the device reenters the idle state, to again vector through the event block 6211 and blocks 6213 and 6215 until the outgoing transmission ends.
- the device begins playback of the queued, digital voice information through D/A conversion at a block 6219 . If voice capture is detected, as indicated by a block 6221 , an A/D conversion, packetization and queuing process takes place at a block 6223 . Thereafter, the device reenters the idle state at the block 6201 , only to vector on an “outgoing queue not empty” event indicated by a block 6225 . At the block 6225 , the device vectors to a block 6227 to send a queued, outgoing voice/audio packet to the other device involved in the voice session exchange. After sending the voice packet, the device reenters the idle state at the block 6201 .
- the device sends a remote hangup packet to the other participating device at a block 6233 , and ends the voice session at a block 6239 . If a remote hangup packet is detected by the device while in the idle state, as indicated by an event block 6235 , the device delivers a click and dial tone to the user at a block 6237 , and also ends the voice session at the block 6239 .
- the queuing time is adjusted at a block 6243 before reentering the idle state at the block 6201 .
- the queue time is adjusted up to avoid clicking sounds associated with gaps in incoming voice signals.
- the adjusted queuing time is only implemented with future groups of voice packets, i.e., not the current group.
- FIG. 63 is a diagram which illustrates further application of the present invention in an embodiment which transparently utilizes internet connectivity to support low-cost voice sessions.
- personal computers 6301 and 6303 participate on internet via dial up service to internet providers 6305 and 6307 , respectively.
- Such service providers typically require the computers 6301 and 6303 to communicate via modem through a telephone line, such as telephone lines 6309 and 6311 via a TCP/IP protocol.
- the internet providers 6305 and 6307 participate along with other providers and participants in an overall network of internet servers and routers, as represented by a block 6315 .
- the internet functions as a distributed information source which can be accessed by either of the computers 6301 or 6303 .
- internet provides a pathway for exchanging data between the computers 6301 and 6303 .
- the computers 6301 and 6303 are also configured with a computer card such as the card 5601 of FIG. 56 a so that they can also handle voice sessioning.
- a two-line telephone 6321 is also provided with a first line attached to the computer card and a second line to a telephone line 6325 . Via the telephone line 6325 , which attaches to a conventional telephone switching network (not shown), the telephone 6321 provides typical dialing functionality outside of the internet network. On the first line, the telephone 6321 interfaces with the computer card in the computer 6301 to place phone calls through the internet.
- a single-line telephone 6323 is also attached to computer card such as the card 5601 of FIG. 56 a .
- the telephone 6323 can place calls either through a conventional telephone network via a telephone line 6327 or through the internet network via the telephone line 6311 .
- the user first picks up the telephone 6321 . If the user selects the first line, the telephone 6321 receives a dial tone and further conventional call processing via the telephone line 6325 . For example, the user of the telephone 6321 could dial the telephone number of the telephone 6323 in a conventional manner.
- the computer 6303 would detect the incoming call ringing signals and directly interconnect the telephone 6323 with the telephone line 6327 . Subsequent call processing would be left to that provided via the conventional phone service.
- the computer 6301 delivers (via its computer card) an internet dial message.
- the message prompts for the normal telephone number of the destination device (i.e., the telephone 6323 ).
- the computer 6301 attempts to identify (from the telephone number entered) an internet address which is used for routing information through the internet network.
- the computer 6301 uses an internet/telephone number, cross-reference database which contains various telephone numbers and associates therewith corresponding internet addresses.
- the computer 6301 If the computer 6303 is not connected to the internet provider 6307 (i.e., “offline”) at the time of the connection request, the computer 6301 will receive no response and timeout. The computer 6301 then sends a voice message to the telephone 6321 indicating that the telephone 6323 is offline. Otherwise, if the computer 6303 is online, the computer receives the connection request and checks to see if the telephone 6323 is currently available.
- the internet provider 6307 i.e., “offline”
- the computer 6303 responds by delivering a busy message through the internet network to the computer 6301 .
- the computer 6301 delivers a busy tone signal to the telephone 6321 .
- the computer 6303 responds to the connection request by delivering a ring signal to the telephone 6323 .
- the computer 6303 also responds by delivering a ringing message through the internet network to the computer 6301 .
- the computer 6301 delivers a ring signal to the telephone 6321 .
- the computer 6301 If the user hangs up the telephone 6321 before the call is connected, the computer 6301 detects the hang and sends a hang up message to the computer 6303 . In response, the computer 6303 aborts the delivery of the ringing signals to the telephone 6323 , ending the voice session setup attempt.
- the computer 6303 responds by sending a message to the computer 6301 via the internet network indicating that a connection has been established. Thereafter, the computer 6303 begins compressing and packetizing voice signals captured by the telephone 6323 for delivery to the telephone 6321 via the internet network. Similarly, upon receiving the message indicating that a connection has been established, the computer 6301 also begins compressing and packetizing voice signals captured by the telephone 6321 .
- Both of the computers 6301 and 6303 begin exchanging the voice packets as they are generated via the internet network.
- the computers 6301 and 6303 queue up received voice packets before beginning playback to the telephones 6321 and 6323 , respectively, to attempt to prevent gaps in the delivered voice signals due to the pseudo random delivery time associated with a given voice packet.
- the detecting computer sends a hang message to the other computer.
- the other computer Upon receipt of the hang message, the other computer delivers a dial tone to its corresponding telephone.
- Calls originating from the telephone 6323 to the telephone 6321 operate nearly the same except during initial call route selection.
- the computer 6303 Upon a user's pickup of the telephone 6323 to place a call, the computer 6303 responds by delivering a dial tone to the telephone 6323 . The computer 6303 then waits for the user entry of a telephone number (in this case the number of the telephone 6321 ).
- the computer 6323 Upon receipt of the telephone number, the computer 6323 checks for an internet address in its cross reference database. If an internet address is found, the computer 6303 (via its computer card) delivers a voice message to the telephone 6323 prompting the user to select (via a keypad on the telephone 6323 ) either internet or telephone switching system routing.
- the computer 6303 accesses the telephone line 6331 , awaits a dial tone, dials the entered number, and, thereafter, connects the telephone 6323 directly to the telephone line 6327 . At that point, the telephone 6323 interacts with basic call model processing associated with the telephone switching network.
- the computer 6303 begins the internet connect processing described above in relation to initiation of an internet call from the telephone 6321 to the telephone 6323 .
- voice sessions between the telephones 6301 and 6303 take place either over the conventional telephone switching network or through the internet. Operation through internet is virtually transparent with one exception. If the queuing time delay through the internet network proves to take too long (i.e., the delay is detectable by the users), the computers 6301 and 6303 can negotiate a half duplex mode of voice communication similar to that found in the speaker phone operation of conventional telephones.
- computers 6301 and 6303 both attempt to identify and filter captured audio during periods of time in which voice audio is not occurring, attempting to minimize overall bandwidth usage.
- a computer need not be present to provide the end user with voice session transport via internet.
- a conventional telephone 6331 is attached to a conventional telephone switching network via a telephone line 6335 .
- the telephone 6331 can establish and maintain voice sessions through conventional means with, for example, the telephone 6323 via the telephone line 6327 .
- the computer 6303 uses the entered country code/area code to identify the internet address of an access device 6333 maintained by an internet provider which, for example, happens to be in the same local calling area as the telephone 6331 (although remotely located from the telephone 6331 ).
- the computer 6307 then sends a connect request containing the telephone number of the telephone 6331 to the internet address of the access device 6333 .
- the access device 6333 responds by gaining access to the conventional telephone switching network, dialing the number of the telephone 6331 and sending appropriate messages to the computer 6303 regarding the status of the call.
- the access device 6333 releases the telephone line and sends a busy message to the computer 6303 .
- the computer 6303 delivers a busy signal to the telephone 6323 .
- the access device detects that the telephone 6331 is ringing, it awaits pickup and delivers a ringing message via internet to the computer 6303 .
- the computer 6303 responds by delivering a ring signal to the telephone 6323 .
- the access device 6333 indicates such an event by sending a connect established message to the computer 6303 via internet. Thereafter, the access device begins packetizing voice signals from the telephone 6331 . The access device sends resulting voice packets through the internet network to the computer 6303 . The computer 6303 also begins packetizing voice captured by the telephone 6323 and sending the resulting voice packets through the internet network to the access device 6333 .
- Both the access device 6333 and the computer 6303 attempt to filter periods of non-voice time periods. Similarly, both queue up incoming voice packets to take into consideration packet delivery delays within the internet network.
- the access device 6333 comprises rather conventional internet server functionality having at least one available outside telephone line through which call processing can be maintained.
- the access device 6333 further comprises call processing circuitry such as is shown in FIG. 56 a for adapting voice information for transport between internet network and the telephone switching network. Such circuit functionality is also described in more detail in reference to FIG. 56 a above.
- FIG. 63 the functionality mentioned in reference to the configuration of FIG. 63 is merely a further embodiment of the flow diagrams of the previous FIGS. 59-62 .
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Toxicology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
- This application is a continuation in part of U.S. Ser. No. 08/487,609, filed Jun. 7, 1995 (Attorney Docket Nos. 10082US12 and DN37998XE), which is a continuation in part of U.S. application Serial Numbers: a) Ser. No. 08/279,148, filed Jul. 22, 1994 (Attorney Docket Nos. 10082US11; DN37998XD); b) Ser. No. 07/876,629, filed Apr. 30, 1992 (Attorney Docket Nos. 92P275; DN36837D); and c) Ser. No. 08/267,758, filed Jul. 5, 1994 (Attorney Docket Nos. 10554US02; DN37613A).
- The application U.S. Ser. No. 68/279,148 is a continuation-in-part of: PCT Application Serial No. PCT/US94/05037 filed May 6, 1994 (Attorney Docket Nos. 10082WO08; DN37998XAX); U.S. application Ser. No. 08/205,639 filed Mar. 4, 1994. (Attorney Docket Nos. DN37139XXA; 10458US03); and U.S. application Ser. No. 08/275,821, filed Jun. 10, 1994 (Attorney Docket Nos. 10082US10; DN37998XC).
- PCT Application Serial No. PCT/US94/05037 is based on U.S. application Ser. No. 08/198,404, filed Feb. 22, 1994 (Attorney Docket Nos. 10082US07; DN37998XA), which is itself a continuation of U.S. application Ser. No. 08/198,452, filed Feb. 18, 1994 (Attorney Docket Nos. 10082US06; DN37998X), which is in turn a continuation-in-part of U.S. application Ser. No. 08/168,478, filed Dec. 16, 1993 (Attorney Docket Nos. 10092US06; DN37998E), and PCT Application Serial No. PCT/US93/12628 filed Dec. 23, 1993 (Attorney Docket Nos. DN37967C and 10082WO01). The application U.S. Ser. No. 08/168,478 is a continuation-in-part of U.S. application Ser. No. 08/147,377 filed Nov. 3, 1993 (Attorney Docket No. DN37998D), which is a continuation-in-part of U.S. application Ser. No. 08/101,254 filed Aug. 3, 1993 (Attorney Docket No. DN37998C), which is itself a continuation-in-part of U.S. application Ser. No. 08/085,662 filed Jun. 29, 1993 (Attorney Docket No. DN37998B), which is itself a continuation-in-part of U.S. application Ser. No. 08/076,340 filed Jun. 11, 1993 (Attorney Docket No. DN37998A), which is in turn a continuation-in-part of U.S. application Ser. No. 08/062,457, filed May 11, 1993 (Attorney Docket No. DN37998).
- PCT Application Serial No. PCT/US93/12628 is based on pending U.S. application Ser. No. 08/027,140 filed Mar. 5, 1993 (Attorney Docket Nos. DN37967B; 10082US05), which is itself a continuation-in-part of U.S. application Ser. No. 07/997,693 filed Dec. 23, 1992 (Attorney Docket Nos. DN37967A; 10005US02), now abandoned, which is a continuation-in-part of U.S. application Ser. No. 07/982,292 filed Nov. 27, 1992 (Attorney Docket Nos. DN37967; 92 P 837), now abandoned, which is itself a continuation-in-part of U.S. application Ser. No. 07/700,704 filed May 14, 1991 (Attorney Docket Nos. DN37834X; 91P383), now abandoned, which is itself a continuation-in-part of U.S. application Ser. No. 07/699,818 filed May 13, 1991 (Attorney Docket Nos. DN37834; 91P862), now abandoned.
- The application U.S. Ser. No. 08/205,639 is a continuation-in-part of U.S. application Ser. No. 07/735,128 filed Jul. 22, 1991 (Attorney Docket Nos. DN37139XX; 91P326), which is itself a continuation-in-part of U.S. application Ser. No. 07/467,096 filed Jan. 18, 1990 (Attorney Docket Nos. DN37139), now U.S. Pat. No. 5,052,020.
- U.S. application Ser. No. 08/062,457 is a continuation in part of U.S. Ser. No. 07/876,776, filed Apr. 28, 1992 (Attorney Docket Nos. 92P334; DN36649XZB), which is itself a continuation in part of U.S. Ser. No. 07/854,115, filed Mar. 18, 1992 (Attorney Docket Nos. 92P241; DN36649XZA), which is in turn a continuation in part of U.S. Ser. No. 07/558,895, filed Jul. 25, 1990 (Attorney Docket Nos. 91P387; DN36649XZ). U.S. Ser. No. 07/558,895 is a continuation in part of U.S. Ser. No. 07/529,353, filed May 25, 1990 (Attorney Docket Nos. 91P869; DN36649XY), which is itself a continuation in part of U.S. Ser. No. 07/347,602, filed May 3, 1989 (Attorney Docket Nos. 91P386; DN36649XX), which is itself a continuation of U.S. Ser. No. 07/345,771, filed May 2, 1989 (Attorney Docket Nos. 91P844; DN36649Y), which is itself a continuation of U.S. Ser. No. 07/345,200, filed Apr. 28, 1989 (Attorney Docket Nos. 91P423; DN36649X), which is itself a continuation of U.S. Ser. No. 07/305,302, filed Jan. 31, 1989 (Attorney Docket Nos. 91P422; DN36649).
- The application U.S. Ser. No. 07/876,629 is also a continuation in part of U.S. Ser. No. 07/854,115, filed Mar. 18, 1992 (Attorney Docket No. DN36649XZA), with its parentage as listed above.
- The application U.S. Ser. No. 08/267,758 is a continuation in part of U.S. Ser. No. 07/748,150, filed Aug. 21, 1991 (Attorney Docket Nos. 10554US01; DN37613), now issued as U.S. Pat. No. 5,349,678 on Sep. 20, 1994.
- The above referenced applications, PCT Application No. PCT/US92/08610 filed Oct. 1, 1992, as published under. International Publication No. WO 93/07691 on Apr. 15, 1993, together with U.S. Pat. No. 5,070,536, by Mahany et al., U.S. Pat. No. 4,924,426, by Sojka, and U.S. Pat. No. 4,910,794, by Mahany, are incorporated herein by reference in their entirety, including drawings and appendices, and hereby are made a part of this application.
- 1. Field of the Invention
- The present invention relates generally to data communication networks having a plurality of wired and/or wireless access servers configured to support remote processing, data storage and voice communication. More specifically, this invention relates to the intelligent routing of packetized voice communication between telephones and radio terminals through wireless and hardwired channels in a data processing network.
- While the present invention is described herein with reference to illustrative embodiments for particular applications, it should be understood that the invention is not limited thereto. Those having ordinary skill in the art and access to the teachings provided herein will recognize additional modifications, applications and embodiments within the scope thereof and additional fields in which the present invention would be of significant utility.
- 2. Description of Related Art
- To support data collection, multiple radio base station networks have been developed to overcome a variety of problems with single radio base station networks such as spanning physical radio wave penetration barriers, wasted transmission power by portable computing devices, etc. However, multiple radio base station networks have their own inherent problems.
- For example, in a multiple base station network employing a single shared channel, each base station transmission is prone to collision with neighboring base station transmissions in the overlapping coverage areas between the base stations. Therefore, it often proves undesirable for each base station to use a single or common communication channel.
- In contradistinction, to facilitate the roaming of portable or mobile devices from one coverage area to another, use of a common communication channel for all of the base stations is convenient. A roaming device may easily move between coverage areas without loss of connectivity to the network.
- Such exemplary competing commonality factors have resulted in tradeoff decisions in network design. These factors become even more significant when implementing a frequency hopping spread spectrum network. Frequency hopping is a desirable transmission technique because of its ability to combat frequency selective fading, avoid narrowband interference, and provide multiple communications channels.
- Again, however, changing operating parameters between coverage areas creates difficulties for the roaming devices which move therebetween. In particular, when different communication parameters are used, a portable or mobile device roaming into a new base station coverage area is not able to communicate with the new base station without obtaining and synchronizing to the new parameters. This causes a communication backlog in data collection networks.
- Such data collection networks and their communication protocols have been specifically designed for data collection and forwarding through wireless and hardwired links. They are designed in attempts to optimize overall data flow through the network. Among other flow optimizing techniques used, the data is segmented and packetized in preparation for transmission. Packet by packet, the data is transmitted as channel bandwidth becomes available.
- Thus, instead of disabling a channel by dedicating bandwidth to service only a pair of participants exchanging potentially large amounts of data (data possibly having no immediate need), the channel is shared by many participants, each sending segments of data in packets whenever an opening in the channel occurs.
- In contrast, to support the delivery of real time voice, alternate network design constraints must be considered. For example, such networks often dedicated bandwidth to voice transmission exchanges. However, by dedicating channel bandwidth to voice, efficient communication of data through such networks is seriously impacted. Data communication would have to wait for longer periods of time until dedicated voice bandwidth has been released. Similarly, data communication would have to be immediately discontinued upon requests for voice bandwidth.
- Thus, there is a need for a communication network that provides efficient distribution and utilization of network resources in support of both data and voice delivery.
- An object of the invention is to provide a method and apparatus wherein seamless voice and data communication is provided among both roaming devices within wireless portions of a communication network and stationary devices within hardwired portions of the network.
- Another object of the present invention is to provide a hierarchical communications system for providing an efficient communication pathway for both data and voice.
- Other objects, advantages, and novel features of the present invention will become apparent from the following detailed description of the invention when considered in conjunction with the accompanying drawings.
- The present invention solves many of the foregoing problems in a variety of embodiments. For example, in one embodiment, a communication network is disclosed which operates to support voice and data communication within a premises. The communication network comprises a plurality of mobile network devices, a stationary network device, a wireless network, a hardwired network and a telephone.
- Each mobile network device has a buffer that stores incoming digital voice information for a predetermined queuing period before beginning voice reproduction from the stored digital voice information. Each mobile network device uses the wireless network to selectively exchange voice and data packets with other mobile network devices. Similarly, the hardwired network is connected to both said stationary network device and the wireless network, and is used to route voice and data packets between the stationary network device and the plurality of mobile network devices which participate via the wireless network.
- The telephone, which is connected to the stationary network device, captures, delivers, receives and reproduces voice in an analog voice stream form.
- The stationary network device also has a buffer that stores digital voice information, received from the wireless network, for a predetermined queuing period before converting it into an analog voice stream. After conversion, the stationary network device delivers the analog voice stream to the telephone. In addition, the stationary network device converts analog voice streams received from the telephone into voice packets for delivery via the hardwired and wireless networks to a selected one of the mobile network devices.
- Further detail regarding this embodiment and variations thereof are also disclosed. For example, the predetermined queuing period can be determined through examining delays found in test signal routing. The stationary network device can be a computer. The wireless network may utilize a polling protocol and spanning tree routing. The stationary network device can provide call setup assistance for the telephone.
- Moreover, the communication network may further comprise a telephone switching network, connected to the stationary network device, which selectively routes analog voice streams received from the telephone onto the telephone switching network. The stationary network device may also selectively route analog voice streams received from the telephone switching network to the telephone.
- Further detail regarding the present invention (and embodiments thereof) may be found in reference to the claims below, in view of the following detailed description and drawings.
-
FIG. 1A is a diagrammatic illustration of a hierarchal communication system built in accordance with the present invention. -
FIG. 1B is a diagrammatic illustration of another hierarchal communication system built in accordance with the present invention. -
FIG. 1C is a diagrammatic illustration of still another hierarchal communication system built in accordance with the present invention. -
FIG. 2 illustrates an embodiment of a basic access interval structure used by a hierarchical network of the present invention. -
FIGS. 3A and 3B illustrate the frequency of operation periodically changing corresponding to access interval boundaries in a frequency hopping communication protocol of the present invention. -
FIGS. 4A and 4B illustrate more than one access interval being used per hop in a frequency hopping communication protocol of the present invention. -
FIG. 5A illustrates an embodiment of an access interval used by the hierarchical network of the present invention wherein a reservation phase is Idle Sense Multiple Access. - Fig. B illustrates an embodiment of an access interval used by the hierarchical network of the present invention wherein a device response follows a reservation poll.
-
FIG. 6A illustrates an embodiment of an access interval used by the hierarchical network of the present invention having multiple reservation slots for transmission of a Request For Poll signal. -
FIG. 6B illustrates an embodiment of an access interval used by the hierarchical network of the present invention wherein general devices contend for channel access. -
FIG. 7A illustrates a sequence in an access interval used by the hierarchical network of the present invention for transferring data from a remote device to a control point device. -
FIG. 7B illustrates a sequence in an access interval used by the hierarchical network of the present invention for transferring data from a control point device to a remote device. -
FIG. 8 illustrates a preferred embodiment of an access interval used by the hierarchical network of the present invention. -
FIGS. 9A and B conceptually illustrate how multiple NETs may be employed in an idealized cellular-type installation according to the present invention. -
FIG. 10 illustrates an access point coverage contour overlap for the multiple NETs Infrastructured Network ofFIG. 1 . -
FIG. 11 illustrates hopping sequence reuse in a multiple NET configuration of the present invention. -
FIG. 12 illustrates a hierarchical infrastructured network of the present invention wherein a wireless link connects access points on separate hard wired LANs. -
FIG. 13 illustrates a hierarchical infrastructured network of the present invention including a wireless access point. -
FIG. 14 illustrates conceptually access points communicating neighboring access point information to facilitate roaming of portable/mobile devices. -
FIG. 15 illustrates a secondary access interval used in the MicroLAN or peripheral LAN in the hierarchical communication network according to the present invention. -
FIG. 16 is a flow chart illustrating the selection of an access point by a mobile computing device for communication exchange. -
FIG. 17 is a flow chart illustrating a terminal maintaining synchronization with the network after it has gone to sleep for several access intervals. -
FIG. 18 is a flow chart illustrating a terminal that maintains or achieves synchronization with the network after it has gone to sleep for several seconds. -
FIGS. 19A and 19B are flow charts illustrating an access interval during inbound communication. -
FIGS. 20A and 20B are flow charts illustrating an access interval during outbound communication. -
FIG. 21 illustrates a sequence in an access interval used in the hierarchical communication network of the present invention with Time Division Multiple Access slots positioned at the end of the access interval. -
FIG. 22 illustrates a sequence in an access interval used by the hierarchical network of the present invention with the Time Division Multiple Access slots positioned immediately following the SYNC. -
FIG. 23 illustrates a sequence in an access interval used by the hierarchical network of the present invention with the Time Division Multiple Access slots positioned immediately following the SYNC and Reservation Poll. -
FIG. 24 illustrates another sequence in an access interval used by the hierarchical network of the present invention with the Time Division Multiple Access slots positioned immediately following the SYNC. -
FIG. 25 illustrates a portion of an access interval including the preamble, SYNC and Reservation Poll. -
FIG. 26 illustrates the information contained in a sample SYNC message. -
FIG. 27 illustrates the information contained in a sample Reservation Poll. -
FIG. 28A illustrates a warehouse environment incorporating a communication network which maintains communication connectivity between the various network devices according to the present invention. -
FIG. 28B illustrates other features of the present invention in the use of a vehicular LAN which is capable of detaching from the premises LAN when moving out of radio range of the premises LAN to perform a service, and reattaching to the premises LAN when moving within range to automatically report on the services rendered. -
FIG. 28C illustrate other features of the present invention in the use of a vehicular LAN which, when out of range of the premises LAN, is still capable gaining access to the premises LAN via radio WAN communication. -
FIG. 29A is a diagrammatic illustration of the use of a peripheral LAN supporting roaming data collection by an operator according to the present invention. -
FIG. 29B is a diagrammatic illustration of another embodiment of a peripheral LAN which supports roaming data collection by an operator according to the present invention. -
FIG. 30 is a block diagram illustrating the functionality of RF transceivers built in accordance with the present invention. -
FIG. 31 is a diagrammatic illustration of an alternate embodiment of the peripheral LAN shown inFIG. 2 . -
FIG. 32 is a block diagram illustrating a channel access algorithm used by peripheral LAN slave devices in accordance with the present invention. -
FIG. 33A is a timing diagram of the protocol used according to the present invention illustrating a typical communication exchange between a peripheral LAN master device having virtually unlimited power resources and a peripheral LAN slave device. -
FIG. 33B is a timing diagram of the protocol used according to the present invention illustrating a typical communication exchange between a peripheral LAN master device having limited power resources and a peripheral LAN slave device. -
FIG. 33C is also a timing diagram of the protocol used which illustrates a scenario wherein the peripheral LAN master device fails to service the peripheral LAN slave devices. -
FIG. 34 is a timing diagram illustrating the peripheral LAN master device's servicing of both the higher power portion of the premises LAN as well as the lower power peripheral LAN subnetwork with a single or plural radio transceivers. -
FIGS. 35 and 36 are block diagrams illustrating additional power saving features according to the present invention wherein ranging and battery parameters are used to optimally select the appropriate data rate and power level of subsequent transmissions. -
FIG. 37 illustrates an exemplary block diagram of a radio unit capable of current participation on multiple LANs according to the present invention. -
FIG. 38 illustrates an exemplary functional layout of the frequency generator ofFIG. 37 according to one embodiment of the present invention. -
FIG. 39 illustrates further detail of the receiver RF processing circuit ofFIG. 37 according to one embodiment of the present invention. -
FIG. 40 illustrates further detail of the receiver signal processing circuit ofFIG. 37 according to one embodiment of the present invention. -
FIG. 41 illustrates further detail of the receiver signal processing circuit ofFIG. 37 according to another embodiment of the present invention. -
FIG. 42 illustrates further detail of the memory unit ofFIG. 37 according to one embodiment of the present invention. -
FIG. 43 illustrates a software flow chart describing the operation of the control processor in controlling the battery powered radio unit to participate on multiple LANS. -
FIG. 44 is an alternate embodiment of the software flow chart wherein the control processor participates on a master LAN and, when needed, on a slave LAN. -
FIG. 45 illustrates another embodiment of the communication system of the present invention as adapted for servicing a retail store environment. -
FIGS. 46 a-b illustrate a further embodiment of the communication system of the present invention which illustrate the use of access servers that support local processing and provide both data and program migration. -
FIG. 47 a is a flow diagram which illustrates the functionality of the access servers ofFIGS. 46 a-b in handling data, processing and direct routing requests. -
FIG. 47 b is a flow diagram utilized by the access servers ofFIGS. 46 a-b to manage the migration of data and program code from a source storage and/or processing device toward an end-point device. -
FIG. 48 is a schematic diagram of the access servers ofFIGS. 46 a-b illustrating an exemplary circuit layout which supports the functionality described in relation toFIGS. 47 a-b. -
FIG. 49 is a specific exemplary embodiment of an access point in a multi-hop communication network utilized for remote processing of 2-D (two-dimension) code information. -
FIG. 50 is a schematic diagram similar to that shown inFIG. 48 which illustrates the circuit layout used in the access point ofFIG. 49 to process the 2-D code information. -
FIGS. 51 a-b are flow diagrams illustrating the operation of the 2-D code processing access point ofFIGS. 49-50 . -
FIG. 52 illustrates the structuring of 2-D code information so as to support a hierarchical recognition strategy as used by the access point ofFIGS. 49-50 . -
FIG. 53 is a diagram illustrating an exemplary 2-D code wherein the hierarchical structure ofFIG. 52 is implemented. -
FIG. 54 is a flow diagram illustrating the functionality of the access point ofFIGS. 49-50 in carrying out the hierarchical recognition strategy ofFIG. 52 . -
FIG. 55 a is a diagram illustrating the overall flow of both data and voice through another embodiment of the hierarchical communication network of the present invention. -
FIG. 55 b is a diagram which illustrates a summary of the various types of communication pathways for setting up voice sessions between a source and destination network device. -
FIG. 56 a illustrates an embodiment of the conversion circuitry contained within acomputer card 5601 which plugs into thecomputer 5515 ofFIG. 55 a. -
FIG. 56 b illustrates an alternate embodiment of the conversion circuitry ofFIG. 56 a wherein instead of using an analog subtraction process to separate outgoing voice signals from the combined incoming and outgoing signals, a digital subtraction process is used (at a subtraction circuit 5653). -
FIG. 57 is an illustration of the back of the telephone 5525 (also illustrated inFIG. 55 a) as built in accordance with the present invention. -
FIG. 58 is a schematic block diagram which illustrates the implementation of one embodiment of the conversion circuitry within thetelephone 5525 ofFIGS. 55 and 57 . -
FIG. 59 is a block diagram illustrating the packet processing functionality of the access devices illustrated inFIG. 55 a. -
FIG. 60 is a flow diagram illustrating the functionality of a source device in the setup of a voice session. -
FIG. 61 is a flow diagram illustrating the functionality of the source device (or assisting access device) when performing call setup. -
FIG. 62 is a flow diagram illustrating ongoing voice session processing performed by a source device (or its assisting access device if needed) and destination device (or its assisting access device if needed). -
FIG. 63 is a diagram which illustrates further application of the present invention in an embodiment which transparently utilizes internet connectivity to support low-cost voice sessions. -
FIG. 1A illustrates ahierarchical communication system 10 within a building in accordance with the present invention. The illustratedhierarchical communication system 10 includes a local area network (LAN) for maintaining typical communication flow within the building premises, herein referred to as a premises LAN. The premises LAN is designed to provide efficient end-to-end routing of information among hardwired and wireless, stationary and roaming devices located within thehierarchical communication system 10. - The premises LAN consists of an infrastructure network comprising radio base stations, i.e., wireless access points 15, and a data base server 16 which may be part of a more extensive, wired LAN (not shown). Herein, base stations which participate in routing and relaying data throughout the communication network are referred to as “access points.” If they also participate in the storage or migration of data and program code or in local processing, the base stations are referred to herein as “access servers.” As will become apparent below, an access point may be modified with additional circuitry and/or programming resources to become an access server. Additionally, access servers and access points are both referred to herein as “access devices.”
- The access points 15 may communicate with each other via hardwired links, such as Ethernet, RS232, etc., or via wireless (radio frequency) links. A plurality of roaming terminal devices, such as a
roaming computing device 20, participate in the premises LAN of thehierarchical communication network 10 to exchange information with: 1) other roaming computing devices; 2) the data base server 16; 3) other devices which might be associated with data base server 16 (not shown); and 4) any other devices accessible via the premises LAN (not shown). A roaming computing device can be, for example, a hand-held computer terminal or vehicle mounted computer terminal (vehicle terminal). - In most circumstances, the premises LAN provides a rather optimal solution to the communication needs of a given network. However, in some circumstances, to serve a variety of particular communication needs, the premises LAN does not offer the optimal solution. Instead of relying on the premises LAN for such communications, when and where beneficial, alternate LANs are spontaneously created by (or with) network devices, such as the
roaming computing device 20, within thehierarchical communication system 10. Such spontaneously created LANs are referred to herein as spontaneous LANs. After the immediate benefits end, i.e., a task has been completed, or if the participants of the spontaneous LAN move out of range of each other, the spontaneous LAN terminates operation. - An exemplary spontaneous. LAN involves the use of peripheral devices as illustrated in
FIG. 1A . Although bulk data transfer destined for a peripheral device 23, such as a printer, from theroaming computing device 20 might be communicated through the premises LAN, a more direct interconnection proves less intrusive, saves power, and offers a lower cost solution. Specifically, instead of communicating through the premise LAN, theroaming computing device 20 needing to print: 1) identifies the presence of an available printer, the peripheral device 23; 2) establishes an RF link (binds) with the peripheral device 23; 3) directly begins transferring the bulk data for printing; and 4) lastly, when the roaming terminal finishes the transfer, the spontaneous LAN with the peripheral device 23 terminates. A spontaneous LAN created between the computing devices and peripheral devices is herein referred to as a peripheral LAN. Other types of spontaneous LANs, such as vehicular LANs, are also possible. Embodiments described below identify vehicular LANs and wide area radio networks (WANs) which are part of the hierarchical communication system according to the present invention. - Although a spontaneous LAN may operate completely independent of the premises LAN, it is more likely that there will be some degree of coordination between the two. For example, while participating in the peripheral LAN, the
roaming computing device 20 may terminate participation in the premises LAN, and vice versa. Alternately, theroaming computing device 20 may only service the peripheral LAN when specific participation on the premises LAN is not required, or vice versa. Moreover, theroaming computing device 20 may attempt to service each peripheral LAN as necessary in a balanced time-sharing fashion, placing little priority upon either LAN. Thus, based on the protocols and hardware selected, a spontaneous LAN can be configured so as to exist hierarchically above, below, at the same level, or independent of the premises LAN. - Generally, to design a given LAN configuration, only the characteristics of that LAN are considered for optimization purposes. However, in the hierarchical communication system of the present invention, the operation of other LANs must also be taken into account. For example, because of the roaming computing devices participation in both the premises and peripheral LANs, the requirements and operation of the premises LAN must be taken into consideration when defining the peripheral LAN, and vice versa. Thus, the hierarchical communication system of the present invention provides a series of tightly coupled radio LANs and WANs with radio transceiver and communication protocol designs which take into consideration such factors as cost, weight, power conservation, channel loading, response times, interference, communication flow, etc., as modified by a primary factor of multiple participation.
- The peripheral LAN replaces hardwired connection between a roaming computing device and associated peripherals. In a typical configuration, a peripheral LAN will consist of one or more peripherals slaved to a single master roaming computing device, although multiple master roaming computing devices are possible. Peripheral devices may be printers, code scanners, magnetic card readers, input styluses, etc.
- Each of the peripheral devices 22 has a built-in radio transceiver to communicate with the
roaming computing devices 20. Theroaming computing devices 20 are configured with built-in radio transceivers capable of communicating on both the peripheral and premises LAN. The access points 15 may be configured with radio transceivers only capable of communicating in the premises LAN. In alternate embodiments, as described below, the access points 15 might instead be configured to participate on both the premises and peripheral LANs. - In particular, the peripheral LAN is intended to provide communications between two or more devices operating within near proximity, e.g., distances of a few tens of feet. The majority of constituents of the peripheral LAN are generally devices that do not require access to resources outside their immediate group, or which can suffice with indirect access through devices which participate outside their immediate peripheral LAN group. In contradistinction, the premises LAN is intended to provide communications between relatively many devices operating across great distances throughout a building.
- The characteristics of the peripheral LAN permit the use of radio transceivers of lower cost, lower power consumption, and generally more simplistic operation than permitted by the premises LAN. However, the operation of the peripheral LAN is adapted for integration with the premises LAN so that a radio transceiver and protocol designed for operation on the premises LAN includes features which allow concurrent or sequentially concurrent operation on the peripheral LAN. For example, by selecting similar communication hardware characteristics and integrating protocols, communication within the premises and peripheral LANs may be achieved with a single radio transceiver.
- In one embodiment, radio communication through the premises LAN, i.e., among the access points 15 and the
roaming computing device 20, utilizes relatively higher-power spread-spectrum frequency-hopping communication with a reservation access protocol. The reservation access protocol facilitates frequency-hopping and supports adaptive data rate selection. Adaptive data rate selection is based upon the quality of communication on the premises LAN radio channel. Radio communication through the peripheral LAN utilizes a relatively lower-power single frequency communication also with a reservation access protocol. As more fully described below, the coordinated use of reservation access protocols in the peripheral and premises LANs maximize information flow while minimizing conflicts between devices participating in the two LANs. - Referring to
FIG. 1B , a smallhierarchal communication system 30 built in accordance with the present invention is shown. Anaccess point 33 and two roaming ormobile computing devices premises LAN 37. Thepremises LAN 37 provides for communication among themobile computing devices host computer 34. Themobile computing devices access point 33 and still communicate with thehost computer 34 via theaccess point 33. - Two
peripheral LANs mobile computing device peripheral devices premises LAN 37. Specifically, theperipheral LAN 40 consists of themobile computing device 35 and theperipheral device 43, while theperipheral LAN 41 consists of themobile computing device 36 and the twoperipheral devices -
FIG. 1C illustrates another embodiment according to the present invention of a largerhierarchal communication system 50. Thehost computer 55 is connected to accesspoints host computer 55 and the access points 56, 57, 58 and 59 provide the infrastructure for the premises LAN. The access points need not be hardwired together. For example, as illustrated inFIG. 1C , the access points 56, 57 and 58 access each other and thehost computer 55 via a hardwired link, while theaccess point 59 accomplishes such access via a wireless link with theaccess point 58. - The access points 56, 58 and 59 can support multiple mobile computing devices. For example, the
access point 56 uses a frequency-hopping communication protocol for maintaining communication withmobile computing devices host computer 55 and the access points 56, 57, 58 and 59 andmobile computing devices - More particularly, each access point operates with a different set of communication parameters. For example, each access point may use a different frequency hopping sequence. Additionally, different access points may not employ a common master clock and will not be synchronized so as to have the frequency hopping sequences start at the same time.
-
Mobile computing devices mobile computing device 62 may roam into the coverage area ofaccess point 58, disconnecting fromaccess point 56 and connecting to accesspoint 58, without losing connectivity with the premises LAN. - Each
mobile computing device access point 57 is shown as a direct participant in not only the premises LAN but also in the peripheral LAN. Theaccess point 57 may have either limited or full participation in the premises LAN. For example, theaccess point 57 may be configured as a mobile computing device with the full RF capability of transmission in both the premises and peripheral LANs. Instead, however, participation in the premises LAN may be limited to communicating through the hardwired link, effectively dedicating theaccess point 57 to the task of servicing peripherals. - Although the use of a plurality of built-in radio transceivers could be used so as to permit simultaneous participation by a single device, factors of cost, size, power and weight make it desirable to only build-in a single radio transceiver capable of multiple participation. Furthermore, even where a plurality of radio transceivers are built-in, simultaneous participation may not be possible depending upon the potential transmission interference between transceivers. In fact, full simultaneous participation may not be desirable at least from a processing standpoint when one transceiver, servicing one LAN, always or usually takes precedence over the other. Justification for such precedence generally exists in a premises LAN over a peripheral LAN.
- For example, communication flow in most premises LANs must be fast, efficient and rather robust when considering the multitude of participants that operate thereon. In the peripheral LAN, however, response times and other transmission related delays are generally more acceptable—even adding extra seconds to a peripheral printer's print time will usually not bother the user. Thus, in such communication environments, it may be desirable to design the transmitters and associated protocols so that the premises LAN takes precedence over the peripheral LAN. This may yield a communication system where fully simultaneous participation in both the premises and peripheral LANs does not exist.
- In communication environments wherein fully simultaneous participation does not exist or is not desired, transmitter circuitry might be shared for participation in both the premises and peripheral LANs. Similarly, in such environments, the communication protocol for the peripheral LAN can be tightly coupled with the protocol for the premises LAN, i.e., integrated protocols, so as to accommodate multiple participation. Moreover, one protocol might be designed to take precedence over the other. For example, the premises LAN protocol might be designed so as to minimize participation or response time in the peripheral LAN. As described in more detail below, such transceiver and protocol analysis also takes place when considering additional multiple participation in the vehicular LAN and WAN environments.
-
FIG. 2 illustrates an embodiment of a communication protocol for the premises LAN which uses a basic Access Interval 200 (“AI”) structure according to the present invention. Generally, an Access Interval is the basic communication unit, a fixed block of time, that allocates bandwidth to synchronization, media access, polled communications, contention-based communications, and scheduled services. The Access Interval inFIG. 2 includes aSYNC header 201 generated by a Control Point (“CP”) device of a NET. The term NET describes a group of users of a given hopping sequence or a hopping sequence itself. The Control Point device is generally the access point 15 referenced above with regard toFIG. 1 . TheSYNC header 201 is used by constituents of the NET to attain and maintain hopping synchronization. Areservation phase 203 follows permitting a reservation poll, which provides the NET constituents an opportunity to gain access to media. Asessions frame 205 is next allocated for communication protocol. Aframe 207 follows for optional time division multiple access (“TDMA”) slots in order to accommodate scheduled services. Scheduled services, for example, real time voice or slow scan video, are such that a dedicated time slot may be required to provide acceptable quality of service. However, as described in more detail below in relation toFIG. 55 , for example, acceptable real-time voice support is possible without dedicating time slots. The function offrames -
FIG. 21 illustrates a sequence in anaccess interval 2100 with the Time DivisionMultiple Access slots 2113 positioned at the end of theaccess interval 2100. In the present example, if this were also a HELLO interval, the HELLO would immediately follow theSYNC 1201. Location of the Time Division Multiple Access slots at such a position provides certain advantages including, for example, 1) theSYNC 2101, HELLO (not shown),Reservation Poll 2103, may all be combined into a single transmission (concatenated frames); 2) hopping information may be moved to or included in theReservation Poll 2103 allowing for a shorter preamble in theSYNC 2101; and 3) the HELLO messages will occur early in theAccess Interval 2100 providing for shorter periods during which a sleeping terminals' receiver is on. - The Time Division Multiple Access slots may also be located at different points within the access interval. Positioning the Time Division Multiple Access slots allow for various systemic advantages. Referring now to
FIG. 22 , anaccess interval 2200 is illustrated showing the Time DivisionMultiple Access slots 2203 immediately following theSYNC 2201. Location of the Time DivisionMultiple Access slots 2203 at this position provides certain advantages including, for example, 1) better timing accuracy is achieved when the Time DivisionMultiple Access slots 2203 immediately follow theSYNC 2201; 2) session overruns do not interfere with the Time DivisionMultiple Access slots 2203; 3) devices which do not use the Time DivisionMultiple Access slots 2203 do not necessarily need to be informed of the Time Division Multiple Access slot allocation; and 4) HELLO message may follow Time DivisionMultiple Access slots 2203,Reservation Slots 2207 orReservation Resolution Poll 2209. - Referring now to
FIG. 23 , anaccess interval 2300 is illustrated showing the Time DivisionMultiple Access slots 2305 immediately following theSYNC 2301 and theReservation Poll 2303. In the present example, if this were a HELLO interval, a HELLO message would immediately follow theReservation Resolution Poll 2309. - Location of the Time Division
Multiple Access slots 2305 at the position shown inFIG. 23 provides certain advantages including, for example, 1) the Time Division Multiple Access slot timing is keyed toSYNC 2301 for better accuracy; 2) the number of Time DivisionMultiple Access slots 2305 may be indicated inSYNC 2301 or theReservation Poll 2303, providing greater flexibility; 3) session frame overruns do not interfere with Time DivisionMultiple Access slots 2305; 4) only one maintenance transmission is required perAccess Interval 2300; and 5) hopping information may be moved to or included in theReservation Poll 2303, permitting a shorter preamble inSYNC 2301. - In the
access interval 2300 configuration shown inFIG. 23 , it is possible that the Time DivisionMultiple Access slots 2305 and theresponse slots 2307 could be the same. TheReservation Poll 2303 would allocate the correct number of slots and indicate which are reserved for Time Division Multiple Access. For example, to use Idle SenseMultiple Access 1 slot) with 1 inbound and 1 outbound Time Division Multiple Access slots, three slots would be allocated with the first two slots reserved. The appropriate Time Division Multiple Access slot duration is 80 bits at a hop rate of 200 hops per second which is just about the expected duration of a Request for Poll. At slower hop rates, multiple slots could be allocated to Time Division Multiple Access allowing the Time Division Multiple Access slot duration to be constant regardless of hop rate. - Referring now to
FIG. 24 , anotheraccess interval 2400 is illustrated showing the Time Division Multiple.Access slots 2403 immediately following theSYNC 2401. In this example thePoll Message Queue 2405 immediately follows the Time DivisionMultiple Access slots 2403. The configuration shown inFIG. 24 provides for certain advantages including, for example, 1) the Time Division Multiple Access slot timing is keyed toSYNC 2401 for better accuracy; and 2) session frame overruns do not interfere with Time DivisionMultiple Access slots 2403. - The configurations shown in
FIG. 21 and inFIG. 23 are preferred because they allow the Reservation Poll messages to be transmitted immediately following the SYNC and because of the power management and interference reduction advantages. - In one embodiment of the Access Interval structure, all message transmissions use standard high-level data link control (“HDLC”) data framing. Each message is delimited by High-Level Data Link Control Flags, consisting of the binary string 01111110, at the beginning of the message. A preamble, consisting of a known data pattern, precedes the initial FLAG. This preamble is used to attain clock and bit synchronization prior to the start of data. Receiver antenna selection is also made during the preamble for antenna diversity. A CRC for error detection immediately precedes the ending FLAG. Data is NRZ-I (differentially) encoded to improve data clock recovery. High-Level Data Link Control NRZ-I data is run-length-limited to six consecutive bits of the same state. Alternatively, a shift register scrambler could be applied instead of differential encoding to obtain sufficient transitions for clock recovery. Data frames may be concatenated, with two or more frames sent during the same transmission, with a single FLAG separating them. An example of this is SYNC, followed by a HELLO or Reservation Poll (SYNC, HELLO and Reservation Poll are discussed more fully below).
- While much of the following discussion centers on the use of frequency hopping in the premises LAN, the Access Interval structure of the present invention is also suitable for single channel and direct sequence spread spectrum systems. The consistent timing of channel access, and the relative freedom from collisions due to channel contention, provide desirable benefits in systems that support portable, battery powered devices regardless of modulation type or channelization. Functions that are unique to frequency hopping may be omitted if other channelization approaches are used.
-
FIGS. 3 a and 3 b illustrate the frequency of operation periodically changing corresponding to Access Interval boundaries in a frequency hopping system. Frequency hopping systems use a hopping sequence, which is a repeating list of frequencies of length (n) selected in a pseudo random order and is known to all devices within a coverage area.FIG. 3 a illustrates a frequency hopping system having oneAccess Interval 301 per frequency hop (the hop occurring every 10 milliseconds) and a length of 79.FIG. 3 b illustrates a frequency hopping system having oneAccess Interval 303 per frequency hop (the hop occurring every 20 milliseconds) and a length of 79. The 20 ms time frame is preferred for a protocol stack that uses a maximum network layer frame of up to 1536 bytes payload while maintaining two real time voice communications channels. Access interval duration may be optimized for other conditions. Access Interval length is communicated to the NET during the SYNC portion of the Access Interval. This allows Access Interval duration, and other NET parameters to be adjusted without reprogramming every device within the NET. - The Access Interval is a building block. The length of the Access Interval can be optimized based on network layer packet size, expected mix of Bandwidth on Demand (“BWOD”) and Scheduled Access traffic, expected velocities of devices within the NET, acceptable duration of channel outages, latency or delay for scheduled services, etc. The preferred Access Interval duration of 20 ms (and maximum packet length of 256 Bytes at 1 MBIT/sec) represents a value chosen for systems with device velocities up to 15 MPH, and a mix between Bandwidth On Demand and scheduled service traffic.
- Within a frequency hopping network, one or more Access Intervals may be used during each dwell in a frequency hopping system. A dwell is the length of time (d) each frequency in the hopping sequence is occupied by the system. For example,
FIGS. 4 a and 4 b show illustrations of cases where more than one 20ms Access Interval 401 is used per hop. This may be appropriate for some instances where it is undesirable to hop at higher rates because of relatively long frequency switching times of the radio hardware, where import, export, or regulatory restrictions disallow hopping at a faster rate, or in some applications where it is desirable to maintain operation on each channel for a longer period. An example of the latter is the case where larger files or data records are transferred routinely. - In a frequency hopping operation, the
Access Interval 200 ofFIG. 2 begins with aSYNC header 201. As mentioned above, the SYNC is generated by the Control Point (CP) device of the NET. The SYNC is used by constituents of the NET to attain and maintain hopping synchronization. Included in the SYNC are the following. -
- 1. The address of the Control Point device.
- 2. Identification of the Hopping Sequence, and index of the current frequency within the hop table.
- 3. Identification of the hop rate, number of Access Intervals per hop, and Access Intervals before next hop.
- 4. A timing character for synchronization of device local clocks to the NET clock contained within the Control Point device.
- 5. Status field indicating reduced SYNC transmissions due to low NET activity (Priority SYNC Indicator).
- 6. Status field indicating if the Access Interval will contain a broadcast message to all devices within the NET.
- 7. Status field indicating premises or spontaneous LAN operation.
- 8. The SYNC field information is optionally encrypted using a block encryption algorithm, with a key provided by the network user. A random character is added to each SYNC message to provide scrambling.
- However, there are two circumstances during which a SYNC message is not transmitted: 1) co-channel interference; and 2) low NET utilization. With regard to co-channel interference, before issuing a SYNC message, the Control Point device performs channel monitoring for a brief interval. If the Received Signal Strength Indicator (RSSI) level indicates an ON channel signal greater than the system defer threshold, then the Access Interval is skipped. Alternatively, a strong ON channel signal may dictate a reduction in Control Point device power to limit the interference distance of the net for the duration of the Access Interval. A system defer
threshold 30 dB above the receiver sensitivity is a preferred choice. Communication within the NET is deferred for the duration of the Access Interval if SYNC is not transmitted due to co-channel interference. - In times of low system utilization, SYNC and Reservation Poll messages are reduced to every third Access Interval. The SYNC message includes a status field indicating this mode of operation. This allows devices to access the NET, even during Access Intervals where SYNC is skipped, by using an Implicit Idle Sense algorithm. If the hopping sequence is 79 frequencies in length as shown in
FIGS. 3 a and 3 b, use of every third Access Interval guarantees that a SYNC message will be transmitted on each frequency within the hopping sequence once each three cycles of the sequence, regardless of whether 1, 2 or 4 Access Intervals occur each hop dwell. This addresses US and European regulatory requirements for uniform channel occupancy, and improves the prospects for synchronization of new units coming into the NET during periods when the NET is otherwise inactive. SYNC messages that are on multiples of 3 Access intervals are labeled as priority SYNC messages. “Sleeping” terminals use priority SYNCs to manage their internal sleep algorithms. Sleeping terminals and Implicit Idle Sense are discussed in more detail below. - It should be noted that SYNC messages are preceded by dead time, which must be allocated to account for timing uncertainty between NET clocks and local clocks within NET constituents. In frequency hopping systems, the dead time must also include frequency switching time for the RF modem.
- The
Reservation Poll frame 203 immediately follows theSYNC header 201. The two messages are concatenated High-Level Data Link Control frames separated by one or more Flags. The reservation poll provides NET constituents an opportunity to gain access to the media. It includes the following. -
- 1. A field specifying one or more access slots.
- 2. A field specifying a probability factor between 0 and 1.
- 3. A list of addresses for which the access points have pending messages in queue.
- 4. Allocation of Time Division Multiple Access slots for scheduled services by address.
- 5. Control Point device Transmitted Power level for SYNC and Reservation Polls.
- The number of access slots, n, and the access probability factor, p, are used by the Control Point device to manage contention on the channel. They may each be increased or decreased from Access Interval to Access Interval to optimize access opportunity versus overhead.
- If the NET is lightly loaded, the pending message list is short, and the NET is not subject to significant interference from other nearby NETs, the control point device will generally specify a
single slot 501 as shown inFIG. 5 a, with a p factor <1. In this case, the reservation phase is Idle Sense Multiple Access (“ISMA”). Devices with transmission requirements that successfully detect the Reservation Poll will transmit a Request for Poll (“RFP”) with probability p and defer transmission with probability 1-p. Fig. b shows adevice response address 65 503 following the reservation poll. - In cases when the transmission density is higher, n multiple reservation slots will be specified, generally with a probability factor p of 1. In this case a device will randomly choose one of n slots for transmission of their Request for Poll. The slotted reservation approach is particularly appropriate in instances where many NETs are operating in near proximity, since it diminishes reliance on listen before talk (“LBT”) (explained more fully below). The number of slots n is determined by a slot allocation algorithm that allocates additional slots as system loading increases.
FIG. 6 a showsmultiple slots 601. - In cases where NET loading is extreme, the Control Point may indicate a number of slots, e.g., not more than 6, and a probability less than 1. This will cause some number of devices to defer responding with a Request for Poll in any of the slots. This prevents the control point device from introducing the overhead of a large number of slots in response to heavy demand for communications, by dictating that some units back off until demand diminishes.
- A pending message list is included in the Reservation Poll. The pending message list includes the addresses of devices for which the Control Point device has messages in queue. Devices receiving their address may contend for the channel by responding with a Request For Poll (RFP) in the slot response phase.
FIG. 6 b showsseveral devices Type 1 devices, andinactive Type 3 devices whose awake window has expired, are immediately buffered, and the device addresses are added to the pending message list. When a message is received through the infrastructure for aType 2 device, or anactive Type 3 device, their address is prioritized at the top of the polling queue. (Device Types and the polling queue are described below.) The pending message list is aged over a period of several seconds. If pending messages are not accessed within this period, they are dropped. - Devices with transmission requirements respond in slots with a Request for Poll. This message type includes the addresses of the Control Point device and requesting device, the type and length of the message it has to transmit, and a field that identifies the type of device. Devices that detect their address in the pending message list also contend for access in this manner.
- As mentioned above, devices may be
Type 1,Type 2, orType 3.Type 1 devices are those which require critical battery management. These may be in a power saving, non-operational mode much of the time, only occasionally “waking” to receive sufficient numbers of SYNC and Reservation Poll messages to maintain connectivity to the NET.Type 2 devices are those that are typically powered up and monitoring the NET at all times.Type 3 units are devices that will remain awake for a window period following their last transmission in anticipation of a response. Other device types employing different power management schemes may be added. - Slot responses are subject to collision in both the single and multiple slot cases. Collisions may occur when two or more devices attempt to send Request for Polls in the same slot. However, if the signal strength of one device is significantly stronger than the others, it is likely to capture the slot, and be serviced as if it were the only responding unit.
FIG. 6 b shows twodevices 605,address address 02, that may be subject to collision or capture. - The Control Point device may or may not be able to detect collisions by detecting evidence of recovered clock or data in a slot, or by detecting an increase in RF energy in the receiver (using the Received Signal Strength Indicator, (“RSSI”)) corresponding to the slot interval. Collision detection is used in the slot allocation algorithm for determining addition or deletion of slots in upcoming Reservation Polls.
- As an optional feature to improve collision detection in the multiple slot case, devices that respond in later slots may transmit the addresses of devices they detect in earlier slots as part of their Request for Poll. Request for Polls which result in collisions at the Control Point device often are captured at other remote devices, since the spatial relationship between devices that created the collision at the base does not exist for other device locations within the NET. The duration of the response slots must be increased slightly to provide this capability.
- If the Control Point device receives one or more valid Request for Polls following a Reservation Poll, it issues a Reservation Resolution (“RR”) Poll and places the addresses of the identified devices in a polling queue. The Reservation Resolution message also serves as a poll of the first unit in the queue. Addresses from previous Access Intervals and addresses of intended recipients of outbound messages are also in the queue.
- If the Polling Queue is empty, then no valid Request for Polls were received or collision detected and no Reservation Resolution poll is issued. If within this scenario a collision is detected, a CLEAR message indicating an Explicit Idle Sense (explained more fully below) is transmitted containing a reduced probability factor to allow colliding units to immediately reattempt NET access.
- Outbound messages obtained through the network infrastructure may result in recipient addresses being prioritized in the queue, that is, if the recipients are active devices—
Type 2 devices orType 3 devices whose awake window has not expired. This eliminates the need for channel contention for many outbound messages, improving efficiency. Messages forType 1 devices are buffered, and the recipient address is placed in the pending message list for the next Access Interval. - Generally the queue is polled on a first in first out (FIFO) basis. The polling order is as follows:
- a. addresses of active units with outbound messages;
- b. addresses from previous Access Intervals; and
- c. addresses from the current Access Interval.
- Since propagation characteristics vary with time and operating frequency, it is counterproductive to attempt retries if Poll responses are not received. If a response to a Poll is not received, the next address in the queue is polled after a short response timeout period. Addresses of unsuccessful Polls remain in the queue for Polling during the next Access Interval. Addresses are aged, so that after several unsuccessful Polls they are dropped from the queue. Addresses linked to outbound messages are added to the pending message list. Devices with inbound requirements must reenter the queue through the next reservation phase.
- Data is transferred in fragments. A maximum fragment payload of 256 bytes is used in the preferred implementation. If transfer of network packets larger than of 256 bytes is required, two or more fragments are transferred. Fragments may be any length up to the maximum, eliminating the inefficiency that results when messages that are not integer multiples of the fragment length are transmitted in systems that employ fixed sizes.
- The sequence for transferring data from a remote device to the control point device is illustrated in
FIG. 7 a. It is assumed thataddress 65 is the first address in the polling queue. TheReservation Resolution poll 701 from the control point device includes the device address and the message length thatdevice 65 provided in its initial Request for Poll. Afirst fragment 703 transmitted back fromdevice 65 is a full length fragment. Its header includes a fragment identifier and a field providing indication of the total length of the message. Length information is included in most message types during the sessions period to provide reservation information to devices that may wish to attempt to access the NET following an Explicit Idle Sense (explained more fully below). - Following successful receipt of the first fragment, the Control Point device sends a
second poll 705, which both acknowledges the first fragment, and initiates transmission of the second. The length parameter is decremented to reflect that the time required for completion of the message transfer is reduced. Asecond fragment 707 is transmitted in response, and also contains a decremented length field. Following receipt of thesecond fragment 707, the Control Point device sends athird poll 709. This pattern is continued until afinal fragment 711 containing an End of Data (EOD) indication is received. InFIG. 7 , the final fragment is shorter than a maximum length fragment. The Control Point device sends a final Acknowledge (ACK), and the device sends afinal CLEAR 713 to indicate conclusion of the transmission. The CLEAR message contains a probability factor p for Explicit Idle Sense (explained more fully below). The value of p is determined by the Control Point device in the ACK and echoed by the device termination communication. A p of zero indicates that the control point device will be initiating other communications immediately following receipt of the CLEAR message. A probability other than 0 indicates an Explicit Idle Sense. - If for some reason a fragment is not successfully received, the next poll from the Control Point device would indicate a REJECT, and request re-transmission of the same fragment. The length field would remain fixed at the previous value, prolonging reservation of the channel for the duration of the message. After a fragment is transmitted more than once without successful reception, the Control Point device may suspend attempts to communicate with the device based upon a retry limit, and begin polling of the next address in the queue.
- A flow chart depicting how inbound messages are received during an access interval is shown in
FIGS. 19A and 19B . A flow chart depicting how outbound messages are transmitted during an access interval is shown inFIGS. 20A and 20B . - Outbound messages are transmitted in a similar fashion as inbound messages, with the Control Point and device roles largely reversed as illustrated in
FIG. 7 b. When the Control Point reaches an address in the queue for which it has an outbound message, the Control Point transmits a Request forPoll 721 identifying the address of the device and the length of the message. The response back from the device would be a poll with an embedded length field. The same POLL/FRAGMENT/ACK/CLEAR structure and retry mechanisms as described above with regard to inbound messages in reference toFIG. 7 a are maintained. The CLEAR from the device indicates a probability p of zero. If the polling queue is empty, the Control Point may send a final or terminating CLEAR 723 containing a probability for Explicit Idle Sense. - All terminating ACK or CLEAR messages contain fields to aid in synchronization of new units to the NET. The content of these fields is identical to that in the SYNC message, except that the timing character is deleted. Synchronization is discussed more fully below.
- Broadcast Messages intended for groups of addresses, or all addresses within a NET may be transmitted during the sessions period. Broadcast messages are not individually acknowledged. These messages may be communicated at intervals over the course of several Access Intervals to provide reliable communication. Messages such as SYNC and Reservation Polls are specialized broadcast messages, with dedicated bandwidth in the Access Interval structure.
- Security of payload data is left to the higher protocol layers. Application programs resident in portable/mobile devices may employ encryption or other means of providing protection against undesired use of transmitted data.
- Portable/mobile devices may employ transmitter power control during the sessions period to reduce potential interference with other NETs that may occasionally be on the same or adjacent channels. These devices will use Received Signal Strength Indicator readings from outbound messages to determine if transmitter power may be reduced for their inbound transmission. Because of the need to maintain channel reservations and Listen Before Talk capabilities, the Control Point device does not use transmitter power control. Since Control Point devices are generally part of an installed system infrastructure, they are likely to be physically separated from devices operating in other NETs. They are therefore less likely to cause interference to devices in other NETs than portable devices, which may operate in proximity to devices in other NETs.
- Often, control point devices will empty the polling queue before the conclusion of the access interval. Two mechanisms within the Access Control Protocol, Explicit and Implicit Idle Sense, are provided to improve bandwidth utilization. These supplemental access mechanisms often provide means for devices that failed to gain reservations during the reservation phase to gain access to the NET within the Access Interval. To assume an Explicit or Implicit Idle Sense, a device must have detected a valid SYNC and Reservation Poll in the current Access Interval.
- The incorporation of a probability factor p≠0 in the final (terminating) ACK or CLEAR from the control point device provides the function of an Explicit Idle. Sense (mentioned above). Devices with transmission requirements solicit Request for Polls using the same rules normally used for a single slot Reservation Poll. Successfully identified addresses are placed in the polling queue, and are polled immediately or in the next Access Interval depending on the time remaining in the current Access Interval. The p factor for Explicit Idle Sense is subject to the same optimization algorithm as the Reservation Poll probability.
- Communication of channel reservations, in the form of the length fields in Polls and Message Fragments is useful to units seeking to access the NET through Explicit Idle Sense. Reservations allow devices to predictably power down during the period that another device has reserved the NET to conserve battery power, without losing the ability to gain access to the NET.
- Implicit Idle Sense provides an additional means of channel access. An Implicit Idle Sense is assumed whenever a device detects a quiet interval period greater than or equal to the duration of a Poll plus the maximum fragment length after a channel reservation has expired. Detection based upon simple physical metrics, such as a change in Received Signal Strength Indicator or lack of receiver clock recovery during the quiet interval, are preferred methods of ascertaining channel activity. Algorithms based upon these types of indicators are generally less likely to provide a false indication of an inactive channel than those that require successful decoding of transmissions to determine channel activity. False invocation of an Implicit Idle Sense is the only mechanism by which data transmissions are subject to collision within the NET. Thus, the Implicit Algorithm must be conservative.
- Quiet interval sensing may begin at the following times within the Access Interval:
-
- a. any time after the last reservation slot following a Reservation Poll;
- b. any time after a terminating ACK or CLEAR indicating an Explicit Idle Sense;
- c. following an unsuccessful response to a single Slot Reservation Poll; or
- d. any time prior to reserved Time Division Multiple Access time slots at the end of the Access Interval.
- It is preferable that devices detecting a quiet interval use a p persistent algorithm for channel access to avoid collisions. The probability factor for Implicit Idle Sense Access will generally be less than or equal to the factor in Explicit Idle Sense.
- A device must receive the SYNC and Reservation Polls at the beginning of an Access Interval to use Implicit Idle Sense. The Reservation Poll provides indication of guaranteed bandwidth allocation to scheduled services at the end of the Access Interval, which may shorten the period available for Bandwidth On Demand communications.
- Devices that require scheduled services must contend for the channel in the same fashion as those requiring Bandwidth On Demand access. When polled, these initiating devices will initiate a connection request that indicates the number of inbound and outbound Time Division Multiple Access slots required for communication, and the address of the target device with which communication is desired. The network infrastructure will then attempt to establish the connection to the target device. Once the connection is established, the Control Point device will signal the allocation of slots to the initiating device. Time Division Multiple Access slots are relinquished by transmitting a disconnect message to the control point device in the Time Division Multiple Access slot until the disconnect is confirmed in the next Reservation Poll.
- The transmission requirements of speech and slow scan video (scheduled services) are similar. In one embodiment, Time Division Multiple Access slots are allocated as multiples of 160 bits payload at 1 MBIT/sec, plus overhead for a total of 300 μs. For 10 ms access intervals, acceptable voice communication can be obtained by allocating 1 Time Division Multiple Access slot each for inbound and outbound communication per access interval. For 20 ms access intervals, two slots each way is required. A system employing 10 ms access intervals at 100 hops per second may improve transmission quality by using two or three slots each Access Interval and sending information redundantly over two or three access intervals using interleaved block codes. Scheduled transmissions are generally not subject to processing or validation by the control point device, and are passed through from source to destination. Use of interleaved error correction coding or other measures to improve reliability is transparent to the NET.
- The selection of certain system parameters is important when considering scheduled services. As an example, since speech is quantized over the duration of the access interval and transmitted as a burst, the length of the access interval translates directly into a transport delay perceptible to the recipient of that speech. In real time “full-duplex” voice communications, delays longer than 20 ms are perceptible, and delays longer than 30 ms may be unacceptable. For real time “half-duplex” voice communications, much longer delays often prove acceptable.
- Real time full-duplex voice communication delays sometimes prove too excessive where the premises LAN is interconnected with the public switched telephone network (“PSTN”), which introduces its own delays. Two way services (i.e., full-duplex services) such as voice communications are the most sensitive to transport delay because delay impacts the interaction of the communicating parties. One way services (i.e., half-duplex services) are less sensitive to transport delay. One way services are good candidates for interleaving or other forms of redundant transmission.
- Similarly, the selection of hop rate is important, as hop rate determines the duration of outages that may occur. If one or more frequencies in the hop sequence are subject to interference, for instance, scheduled transmissions during those hops will be disrupted. In a system that hops slowly, detrimental outages of hundreds of milliseconds will occur resulting in poor transmission quality. Occasional losses of smaller durations, e.g., 10 ms or 20 ms, are generally less perceptible, indicating that faster hop rates are desirable if the NET is to offer real time voice transport.
- Scheduled service intervals may also be used for data transport on a scheduled or priority basis. Telemetry, data logging, print spooling, modem replacement, or other functions are possible. For these activities, a few Time Division Multiple Access slots scheduled for example every fourth, eighth, or sixteenth Al are necessary.
- Because of multipath and dispersion issues with 2.4 GHz transmission at relatively high data rates, the ability of the NET to adaptively switch between two or more data rates is desirable.
- In one embodiment, implementation of data rate switching may be accomplished by selecting a standard rate of communications, e.g., 250 KBPS and a high rate of communications of 1 Mbit/sec. Messages that contain system status information, including SYNC, Reservation Polls, Reservation Resolution Polls (Request for Polls), Polls, ACKs and CLEARS are transmitted at the standard rate. These messages are generally short, and the time required for transmission is largely determined by hardware overhead, e.g., transmitter receiver switching time. The incremental overhead introduced by transmitting these messages at the lower rate is therefore small in comparison to the total length of an access interval. The reliability of reception of these messages will increase, which will eliminate unnecessary retries in some instances where fragments are received successfully, but acknowledgments or polls are missed.
- A test pattern at the higher data rate is inserted in each Poll (not in Reservation Polls, however). The Poll recipient evaluates signal quality based on the high data rate test pattern, Received Signal Strength Indicator, and other parameters to determine whether to transmit a fragment at the high rate or the low rate. Fragment lengths are selected such that high and low rate maximum fragment lengths are the same duration. In other words, a fragment at the low rate conveys approximately ¼ the payload of a fragment for the case where the data rate is four times greater. This method is generally suitable for transaction oriented communications, which frequently require short message transmissions. Alternatively, the length field in Polls and messages can be used to allow different fragment lengths for the two data rates while still providing channel reservation information to other devices in the NET. This method also provides for forward migration. As modulation and demodulation methods improve, newer products can be added to old networks by upgrading Control Points devices. Both new and old devices share the ability to communicate at a common low data rate.
- An alternate embodiment uses signaling messages such as SYNC, Reservation Polls, Request for Polls, etc., at the higher rate with fall back operation to the standard rate for the communications sessions only. SYNC and Reservation Polls at the high rate constitute a high data rate test message. The Request for Poll response to the Reservation Poll at the high rate may include a field indicating that sessions communications should take place at the fall back, standard rate. Signal quality measures such as signal strength and clock jitter are appropriate. Data rate selection information is included with the device address in the polling queue. When the device is polled, it will be polled at the rate indicated in the Request for Poll. Channel reservation information in the Reservation Resolution Poll will indicate the reservation duration based upon the data rate indicated.
- In this alternate embodiment, the fact that SYNC and Reservation Polls must be detectable at the high data rate prioritizes access to the NET for those devices that have acceptable connectivity during the current access interval. This general approach has desirable characteristics in a frequency hopping system, as the propagation characteristics between devices may change significantly as the NET changes from frequency to frequency within the hopping sequence, or over several Access Intervals during the dwell time on a single frequency. Reduction in data rate in this system is primarily intended to remedy the data smearing (inter-symbol interference) effects of dispersion due to excess delay, rather than temporarily poor signal to noise ratio due to frequency selective fading. Devices that receive high data rate transmissions with acceptable signal strength but high jitter are likely to be experiencing the effect of dispersion.
- The concept of allowing Polls and message fragments to occur at an either high or low data rate could create difficulties for other NET constituents that need to be able to monitor the channel for reservation information. Two embodiments for solving this problem are the use of auto-discriminating receivers or the use of fixed data rate headers for system communications.
- Auto discrimination requires the receiver to process messages sent at either data rate, without necessarily having prior knowledge of the rate.
- Given a high rate of 1 MBIT/SEC, and a low Rate of 250 KBPS, i.e., one being a binary multiple of the other, it is possible to devise preambles that can be received at either rate. Consider that 01 and 110 sent at the low rate correspond to 00001111 and 111111110000 at the high rate. These preambles are transmitted continuously before the transmission of the High-Level Data Link Control FLAG character at the correct data rate indicating the start of a message. In this example, a preamble of 20 bits of 01 at the low rate indicates operation at the high rate. A preamble of 30 bits of 110 indicates operation at the low rate. A receiver tuned to either rate is capable of receiving both types of preambles and initiating the proper decoding mechanisms for the intended rate of transmission.
- This general technique, with appropriate selection of preamble content, is applicable to binary modulation schemes, for example, a frequency modulated system where a common frequency deviation value is used for both data rates. It is also applicable to systems where switching occurs between binary and multilevel modulation, such as disclosed in pending U.S. application Ser. No. 07/910,865, filed Jul. 6, 1992.
- Referring now to
FIG. 25 , apreamble 2501, aSYNC 2503 and aReservation Poll 2505 are illustrated. Thepreamble 2501 starts at the beginning of theAccess Interval 2500 and applied to an RF modem while it is switching frequencies. Since the switching time is a worst case, this causes thepreamble 2501 to be present and detectable prior to the allocated 150 μsec period in some instances. It would be equally appropriate to beginpreamble transmission 50 or 100 μsec into the switching period if that would be more convenient. The timing has been selected to allow 100 μsec. - Referring to
FIG. 26 , asample SYNC message 2600 is shown. Referring toFIG. 27 , asample Reservation Poll 2700 is shown. In these examples, the hopping synchronization information has been positioned in theReservation Poll 2700. - With auto-discrimination, it is possible to change data rates on a per-poll basis, thereby adjusting for channel temporal dynamics. Since all devices in the NET have auto discrimination capabilities, and channel reservation information is included in message headers as a length field, the bandwidth reservation features of the NET are preserved. The maximum fragment duration may be maintained at a fixed value, meaning that low data rate fragments convey less data than their high rate counterparts, or may be scaled in the ratio of the data rates to allow consistent fragment data payloads.
- An alternative to auto-discrimination is the use of headers to communicate system information. This embodiment is less preferred, but may be appropriate if economics, size, or power constraints dictate a simpler design than that required for auto-discrimination. In this embodiment, any transmission at the lower data rate is preceded by a header at the high data rate that conveys NET management information, i.e., channel reservation status. Devices other than those directly involved in polling or fragment transmission need only monitor at the high rate for channel reservation information. The header at the high rate and the following transmission at the low rate are concatenated High-Level Data Link Control frames, with an appropriate preamble for low rate clock recovery synchronization inbetween.
- For the communicating devices, the header can serve the additional purpose of acting as a test pattern at the high rate. For example, if a device is polled at the low rate, but successfully decodes the high rate header with adequate signal quality, it may indicate back to the polling unit to poll again at the high rate.
- In a premises LAN as discussed in reference to
FIG. 1 , many NETs may be distributed geographically to provide enhanced coverage or additional system capacity. The wired portion of the network infrastructure, such as Ethernet or Token Ring, provides a means for coordination of NETs to achieve optimum system performance. An equally important role of the wired infrastructure is to allow resource sharing. Portable devices with limited memory capacities, processing power, and relatively small batteries may access large data bases on, or remotely initiate processing capabilities of, larger AC powered computer systems. Portable/mobile devices may also share communication with other like devices which are serviced by other NETs well beyond the radio coverage range of their own NET. - The basic method for communication of status information regarding the premises LAN is the HELLO message. HELLO messages are sent routinely, but relatively infrequently, for example, every 90 Access Intervals. The HELLO transmission interval is tied to the Priority SYNC interval, so that the HELLO interval corresponds to Access Intervals where SYNC is transmitted if the network is lightly utilized.
- In an alternate embodiment, HELLOS could be inserted as a broadcast message at the beginning of the Sessions period.
FIG. 8 illustrates a preferred Access Interval embodiment where aHELLO message 801 is inserted between aSYNC 803 and aReservation Poll 805. The SYNC frame at the beginning of the Access Interval indicates that the Access Interval will contain a HELLO, allowing power managed devices to remain awake to receive the HELLO. - HELLO messages may also contain information regarding pending changes in the local NET. If the local NET is changing Access Interval durations or hop sequences, for instance, changes may be communicated in several consecutive HELLOs so that the information is reliably communicated to all NET constituents, permitting all devices to make the change in coordinated fashion. Further discussion of HELLO message content is provided below.
- For purposes of channel management in the Access Interval structure, the maximum transmission duration by a device should be limited to the time that the device moving at a maximum expected velocity can traverse ¼ wavelength of the maximum carrier frequency. The duration may be further reduced to compensate for link bit error rate characteristics or expected duration or frequency of interference bursts. A maximum transmission duration of 2.5 ms is suitable for 1 MBIT/SEC transmission, with a device velocity of 15 mph, in a multiple NET environment.
- Use of spatial or polarization antenna selection diversity is also desirable in indoor propagation environments. First, the receiving unit makes an antenna diversity decision during the preamble portion of each transmission. The antenna used for reception for each device address is then recorded in memory so that the correct antenna will be used for response messages to each address. While diversity selection is only valid for a short time, it is not necessary to age this information, because antenna selection is equi-probable even after diversity information is no longer valid.
- The Access Interval structure of the present invention also inherently provides routine channel sounding for each hop. This is important in a frequency hopping system, as channel conditions will vary considerably from frequency to frequency within the hopping sequence. NET constituents must, in most cases, be able to receive SYNC and Reservation Poll transmissions from the Control Point device to attempt inbound access in an Access Interval. This provides a positive indication that the device is not experiencing a channel outage, allowing power saving and eliminating possible channel contention. Channel sounding does not need to be employed during periods where the NET is not busy since contention is unlikely in this situation.
- Channel sounding for Outbound messages is accomplished through a Request for Poll/Poll cycle where handshaking messages with short time out periods must be successfully communicated before longer message transmissions may be attempted.
- As discussed above with regard to
FIG. 1 , a premises LAN consists of several access points 15 located throughout an environment requiring wireless communications, e.g., a building or other facility, or a campus comprising several buildings. The access points 15 are placed to provide coverage of intended usage areas for the roaming portable ormobile computing devices 20. Coverage areas must overlap to eliminate dead spots between coverage areas. - The access points 15 may be interconnected via industry standard wired LANs, such as IEEE 802.3 Ethernet, or IEEE 802.5 Token Ring. Access points may be added to an existing LAN without the need to install additional LAN cable. Alternatively, it may be desirable to install access points on dedicated LAN segments to maximize performance of both the radio network and other collocated computer devices.
- Access points within the premises LAN provide Control Point functions for individual NETs. NETs employ different hopping sequences to minimize potential interference between NETs. Regulatory restrictions generally preclude synchronization of multiple NETs to a single master clock, requiring that individual NETs operate independently from one another. The lack of the ability to coordinate timing or frequency usage between NETs introduces the potential for collisions between independent NETs with overlapping coverage areas.
-
FIGS. 9 a and b conceptually illustrate how multiple NETs may be employed in an idealized “cellular” type installation. Eachhexagon FIG. 9 a represents the primary coverage area of a given NET. Coverage areas are modeled ascircles 905 based upon some reliability criterion, for example a 5% mean fragment retry rate (on average 95% of fragments are successfully communicated on the first attempt). Typical coverage areas are determined by physical attributes of the area in which the NET operates. As illustrated inFIG. 9 b for the hexagon (NET) 903 ofFIG. 9 a, anactual coverage area 907 meeting the reliability criterion is likely to be irregular. This may require access points to be offset significantly from the hexagonal grid. -
FIG. 10 illustrates a coverage contour overlap for the multiple NETs in the premises LAN ofFIG. 1 . Darkenshaded areas 1001 indicate areas where access point coverage overlaps. Because the coverage distance of a radio system on an instantaneous basis greatly exceeds the coverage that can be provided on average to sustain a given quality of service, the overlap at any instant may be significantly greater than the coverage contours indicate. -
FIG. 11 illustrates hopping sequence reuse in a multiple NET configuration. Hopping sequence reuse may be necessary if there are physical constraints on the number of hopping sequences that can be supported. For example, devices may have limited memory available for hopping sequence storage. Use of a smaller set of sequences also simplifies the task of determining sets of sequences that have acceptable cross correlation properties. InFIG. 12 , 7hopping sequences 1 through 7 are used throughout the coverage area. Other NETs may reuse the same hopping sequence at some distance removed. While 7 NETs are illustrated, larger numbers, such as 9 or 15 may provide a better compromise between minimizing the number of hopping sequences used, and reuse distance between NETs using the same sequence. Reuse requires coordination of hopping sequence assignment—either the system installer can coordinate the installation, or the system may include automated management features to assign hopping sequences to individual NETs. - Since NETs are not synchronized, different NETs that use the same hopping sequence are likely to interfere during periods where oscillator drift causes them to be temporarily synchronized. At other times, they may only interfere due to imperfect channelization. For example, for a worst case 100 ppm frequency error between two NETs using the same 79 frequency sequence at one Access Interval per hop and 50 hops per second, NETs will partially or fully overlap for a duration of 10 minutes every 4.3 hours. Typically the frequency error will be 25% to 50% of the worst case, leading to longer overlap periods occurring less frequently.
- NETs using the same hopping sequence must be physically isolated from one another to reduce interference to an acceptable level. Extensive hopping sequence reuse generally requires site engineering and optimization of access point placement. Using more hopping sequences reduces the need for critical system engineering during installation. Fifteen hopping sequences is a preferred number for hopping sequence reuse, allowing simplified installation and minimal coordination.
- NETs that use different hopping sequences will also temporarily synchronize in timing relationships that cause mutual co-channel interference on common channel frequencies. Since the number of channels that must be used in a sequence is a significant fraction of the total number of channels available, all sequences will share some number of frequencies in common. When sequences are time aligned so that a common frequency is used simultaneously, interference can occur. Optimization of sets of sequences for low cross correlation is necessary to prevent various time alignments of sequences from having more than one or two frequencies in common.
- Optimization of hopping sequences for multiple NETs must also include analysis of imperfect channelization. The performance characteristics of the RF modems may not, for economic or power consumption reasons, provide sufficient transmitter spectral containment, receiver dynamic range, or receiver selectivity to guarantee that devices operating on different frequencies in proximity to one another will not interfere. In selecting hopping sequences for desirable cross correlation properties, adjacent and alternate adjacent channel interference must be considered. Protocol retry mechanisms for fragments lost to adjacent channel interference or limited dynamic range may be randomized to prevent continued disruption of communications in the affected NET.
- Often in campus environments where systems must provide coverage in several buildings, the cost of wiring LAN cable between access points is prohibitive. To establish connectivity between access points in a premises LAN, it may be necessary to provide wireless links between groups of access points connected to separate LAN segments.
FIG. 12 illustrates awireless link 1201 connecting groups ofaccess points access points separate LAN segments - In one embodiment, the
access points - In another embodiment, it may also be desirable to support wireless access points. Wireless access points serve as control points, but are not connected to the infrastructure through a LAN cable. As illustrated in
FIG. 13 , awireless access point 1301 participates in the premises LAN through awireless link 1303 to anaccess point 1305 that is connected to aLAN 1307. - Wireless access points operate as slave devices to master access points which are connected to the wired infrastructure. The wired and wireless access points share the same hopping sequence, and are synchronized as a common NET. Because they are not connected to the Infrastructure, wireless access points must be used as store and forward devices. Each transmission to a wireless base must be retransmitted to the intended destination device, doubling the number of transmissions occurring in the NET. Wireless access points are preferably used for supplementing coverage area of the premises LAN. For example, a wireless access point might provide spot coverage of isolated “dead spots” where data traffic is limited or where providing a wired LAN connection is difficult. Wireless access points may also serve as emergency spares to provide coverage in the event of a failure of a primary access point. In this role, the wireless access point may be either permanently installed in selected locations, or stored in a maintenance area and quickly positioned and connected to AC or battery power to provide communications while repairs are made to the primary wired access point. Moreover, permanently installed wireless access points might also be used for redundancy, i.e., to monitor an associated access point and to take over when a breakdown is detected.
- The preferred wireless access point embodiment uses interleaved access intervals. The parent wired access point and secondary wireless access point coordinate Access Intervals, the wired access point deferring every third or sixth access interval to the wireless base. Since the wired access point transmits priority SYNC messages every third Access Interval, the wireless access point may routinely be allocated one of the two intervening Access Intervals for priority SYNC communications with devices that are attached to it. Communication between the wired and wireless access points may occur during Access Intervals initiated by either access point. Wireless access points may also communicate with devices during an Access Interval using Implicit or Explicit Idle Sense.
- This embodiment provides predictable access for devices attached to the wireless NET, and allows the same power management algorithms to be used regardless of whether the access point is wired or wireless. The wireless access point may transmit its own priority SYNC and HELLO messages. Also, devices seeking communications with the wireless access point will automatically be synchronized with the wired base as well, allowing immediate improved access to the network if their mobility has put them within range of the wired base.
- Because of the constraint of sharing bandwidth with a wired access point, connectivity of wireless access points is normally limited to one per wired access point. However, in cases where system loading is predictably and consistently light, multiple wireless access points could share a single wired base, e.g., each transmitting in turn in the Access Intervals between the Wired Base Priority SYNC Access Intervals.
- Wireless access points are capable of supporting scheduled traffic. However, since each transmission to a wireless access point must be forwarded, scheduled transmissions through wireless access points use twice the bandwidth as those through wired access points. In other words, twice the number of Time Division Multiple Access slots must be allocated. To avoid introducing excessive delay, communications must be forwarded during the same Access Interval that they are received, or shorter Access Intervals must be used. Scheduled traffic slot assignments must be common to all wireless bases operating within a single NET.
- Wireless access points require reliable communication with their wired counterparts. This dictates smaller coverage contours for wireless access points. If a wired access point provides 80,000 square feet of coverage area, a wireless base can be predicted to provide only an additional forty percent coverage improvement, due to overlap with the wired access point. Frequently, access points are mounted at ceiling level, providing a relatively clearer transmission path between access points than exists between bases and portable/mobile devices located in more obstructed areas near the floor. With careful site engineering and installation, a wireless access point can provide somewhat better than the forty percent predicted improvement, but still less than the coverage of an additional wired base.
- As discussed above, HELLO messages are used to communicate NET and premises LAN status messages. They facilitate load leveling and roaming within the premises LAN and allow sequence maintenance to improve security and performance within the NET. HELLO messages occur periodically in Access Intervals that contain priority SYNC messages. HELLOs are sent periodically relative to the sequence length, for instance, every 90 Access Intervals. HELLOs, like SYNC information, are optionally encrypted to provide greater security.
- Each HELLO message includes a field for COST. COST is a measure of the access point to handle additional traffic. A device determining which of two or more access points having adequate signal strength to register which will select the base with the lowest COST factor.
- The base computes COST on the basis of how many devices are attached to the NET, the degree of bandwidth utilization, whether the base is wired or wireless, the number of frequencies experiencing consistent interference within the sequence, and the quality of the connection the base has within the premises LAN.
-
FIG. 14 illustrates the concept of access points communicating neighboring access point information through HELLO messages to facilitate roaming of portable/mobile devices. In a premises LAN,access points access points wireless link 1411. A portable/mobile device 1413 is initially registered withaccess point 1401, which acts as a control point for the portable/mobile device 1413. HELLO messages transmitted byaccess point 1401 to portable/mobile device 1413 contain fields for neighboringaccess points mobile device 1413 detects the HELLOs transmitted fromaccess point 1401 and uses the information for coarse synchronization with theother access points - Simply put, communication of neighbors' information permits each access point to advise its associated portable/mobile devices (i.e., those having common communication parameters) on how to capture HELLO messages from neighboring access points having different communication parameters. Such communication parameters may include, for example, hopping sequences, spreading codes, or channel frequencies.
- For example, neighbors' information transmission is appropriate in any case where the system uses more than a single channel. For instance, in a direct sequence architecture, a single spreading code is often used. Capacity can be added to such a network by employing different spreading codes at each access point. The neighbors' information included in the HELLO message from a given access point would include the spreading sequences of access points providing coverage in adjacent coverage areas. Likewise, in a multiple frequency channelized system, HELLO messages would include the channel frequencies of adjacent access points.
- In addition to facilitating roaming, communication of neighbors' information may also facilitate the initial selection of an access point by a portable/mobile device attaching to the premises LAN for the first time.
- Access point HELLO messages may also facilitate adaptive access point transmitter power control. For example, each access point HELLO transmission could specify the transmitter power level being used by the access point. If a given attached portable/mobile device notes that the current access point transmitter power level is unnecessarily high (creating the possibility of interference with other access points), the portable/mobile unit could send a message to the access point indicating as such, and the access point could adjust the transmitter power level accordingly.
- HELLO messages also enable communication of information indicating to all devices that certain changes in the NET are required. For example, the NET may switch hopping sequences periodically to improve security, or to avoid interference sources that consistently interfere with one or two frequencies within a given sequence. Interference may result from outside sources, or from other NETs. Changes to the NET are communicated over the course of several HELLO messages (with a countdown) before the change occurs, so that all devices are likely to be aware of changes and synchronize at the instant of change.
- In addition, if encryption is used, the encryption key may be periodically changed in HELLOs. Like hopping sequence changes, KEY changes are sent over several HELLOS, and are encrypted using the existing key until the change goes into effect.
- As mentioned above, roaming portable and mobile computing devices operating in the premises LAN will routinely move between access point coverage areas. At the maximum device velocity and expected coverage area per access point, a mobile device may be expected to cross a NET coverage contour in several seconds. Because of the use of multiple, non-synchronized frequency hopping NETs, it is more difficult to provide for simple hand-off between access points than it would be in a system that used cellular techniques with a single frequency per cell. The premises LAN makes special provisions for roaming by transmitting coarse frequency hopping synchronization information in HELLO messages.
- The premises LAN uses a spanning tree algorithm to maintain current information regarding the general location of mobile devices within the network. When a device changes registration from one NET Control Point to another, routing information is updated throughout the infrastructure. Wired access points may broadcast spanning tree updates to attached wireless access points.
- In the premises LAN, roaming portable and mobile devices initially select and register with an access point Control Point on the basis of link quality, i.e., signal quality, signal strength and COST information transmitted within HELLO messages. A device will remain attached to a particular access point until the link quality degrades below an acceptable level, then it will attempt to determine if an alternative NET is available. Different device operating scenarios dictate different roaming strategies, discussed below.
- An idle device monitors SYNC and HELLO messages from the Control Point device to maintain NET connectivity.
Type 2 devices do not employ power management, and always maintain their receivers in an active state. They monitor all SYNC messages.Type 1 andType 3 devices typically employ power management, operating in standby or sleep modes of operation for many Access Intervals before activating their receivers for monitoring SYNC and HELLO messages. Control Points are guaranteed to send Priority SYNC frames every third Access Interval. HELLOs occur every 30th Priority SYNC frame. Power managed devices employ sleep algorithms synchronized to wake for the minimum period necessary to guarantee receipt of priority SYNC, HELLO, and Pending Message transmissions before resuming SLEEP. -
Type 2 devices are typically operated from high capacity vehicular power systems, eliminating the need for power management. These devices may travel at velocities near the maximum system design specification, dictating more frequent roaming.Type 2 devices will initiate a search for an alternative NET if SYNC messages are consistently received at signal strengths below a Roaming Threshold or if reception errors are consistently detected. Because of the effects of frequency selective fading, signal strength information is averaged over the course of several hops within the hopping sequence. - If roaming is indicated, the device initiates a Roaming Algorithm, using Neighbors' information from the most recent HELLO to attempt synchronization with another candidate NET. If SYNC is not detected within 6 hops, another candidate from the Neighbors list will be selected, and the process repeated. Once SYNC is attained on an alternative NET, the device will monitor signal strength and data errors for several hops to determine link quality. If link quality is acceptable, the device will continue monitoring until a HELLO is received. If COST is acceptable, it will then register with the new NET. The Control Point device will update the spanning tree over the wired backbone (or by RF if a wireless base). If link quality or COST is unacceptable, another candidate from the Neighbors list is selected and the process repeated. This continues until an acceptable connection is established. If a connection cannot be established, the device must return to the original NET or employ the initial acquisition algorithm.
-
Type 2 devices also have the option of monitoring other NETs before degradation of their NET connection. They may do so by monitoring their own NET for the SYNC and pending message list transmissions, then scanning other candidate NETs during the Sessions period of their NET. Other type devices may do so less frequently. -
Type 1 andType 3 devices may sleep extensively when idle, preferably activating every nine Access Intervals to resynchronize and check pending messages. Successful reception of at least one SYNC during three monitoring periods is necessary to maintain fine synchronization to the NET clock. Failure to receive two of three SYNC frames, or receipt of two or three SYNC messages with poor signal strength are possible indications of the need to further test link quality by remaining active for several consecutive SYNC transmissions. If signal strength or data errors over several hops indicates that link quality is poor, or if a received HELLO message indicates high COST, the roaming algorithm is initiated, and alternative NETs are evaluated, as in the case ofType 2 devices. - Some battery powered devices may sleep for periods of time more than nine Access Intervals. For example, devices with extremely limited battery capacity may sleep between HELLOs, or several HELLO periods, after which they must remain active for several consecutive Access Intervals to regain fine synchronization and assess whether to initiate roaming.
- A
Type 1,Type 2, orType 3 device that has inbound message requirements immediately activates its receiver and waits for a SYNC and subsequent Reservation Opportunities. A device that does not detect SYNC messages over the course of six Access Intervals immediately initiates the Roaming Algorithm. - Outbound messages for devices that have changed coverage areas, but which have not yet registered with a new Control Point device, are problematic. For example, in the premises LAN, messages will be forwarded to the access point that the device had previously been attached to. The access point may attempt to poll the device during one or more Access Intervals, then transmit the unit address in the pending message list periodically for several seconds before disregarding it. Once the unit attaches to a base, the message must be transferred from the previous access point for delivery to the unit. All of these activities require transmission bandwidth on either the backbone or RF media, waste processing resources within the premise LAN, and result in delayed delivery.
- As this premises LAN embodiment is designed, the network has no means of distinguishing messages it cannot deliver due to roaming from messages that should be retried due to signal propagation characteristics, interference, or sleeping devices. For this reason, the roaming algorithm may be designed to allow devices to quickly detect that they have lost connectivity within their current NET, and re-attach to a more favorably located access point.
- Some improvement in delivering pending messages to roaming terminals can be obtained by routinely propagating pending message lists over the wired backbone. When a device attaches to an access point, that base is able to immediately ascertain that the device has a pending message, and initiate forwarding of the message for delivery to the device.
- In the preferred frequency hopping embodiment of the present invention, the hopping sequence consists of 3 m±1 frequencies, where m is an integer. 79 frequencies are preferred. This embodiment will support hopping rates of 100, 50 hops per second at 1 Access Interval per dwell, 25 hops per second at 2 frames per dwell, and 12.5 hops per second at 4 frames per dwell. Other rates can be supported for other Access Interval Durations. For example, if the Access Interval is optimized to 25 ms, hop rates of 80, 40, 20, and 10 hops per second would be supported.
- All devices within the NET may have one or more hopping tables that contain potential hopping sequences that may be used. Up to 64 sequences may be stored in each device. Each sequence has an identifier, and each frequency in each sequence has an index. The sequence identifier and index are communicated in the SYNC transmission.
- All SYNC transmissions may be block encrypted to prevent unauthorized devices from readily acquiring hopping synchronization information. To facilitate encryption, the encryption key may initially be factory set to a universal value in all devices. Users would then have the option of changing this key, by providing a new key to each device in the system. This may be accomplished through keyboard entry or other secure means. Keys may also be changed through the NET.
- To facilitate hopping management, a hopping control portion of a protocol controller will download a hopping table to a radio modem, and will signal the radio modem when to hop. This approach consolidates timing functions in the protocol controller, while not requiring the controller to be concerned with conveying frequency selection data to the modem each hop.
- The NET may switch hopping sequences periodically to improve security, or to avoid interference sources that consistently interfere with one or two frequencies within a given sequence. As mentioned above, changes to the NET are communicated over the course of several HELLO messages before the change occurs so that all devices are likely to be aware of changes.
- Initial synchronization requires devices to ascertain the hopping sequence, the hop rate, and the specific frequency from the hopping sequence currently in use. Synchronization information is contained in two types of routine messages. The SYNC field at the beginning of an Access Interval contains synchronization information including the hopping sequence, the index of the current frequency within the sequence, the number of Access Intervals per hop, and the length of the Access Interval. It also contains a timing character that communicates the NET master clock to all listening devices. Termination messages in the Sessions period, ACK and CLEAR, contain the same information, but do not contain the timing character.
- The simplest method for attaining synchronization is to Camp—select a quiet frequency that is likely to be within a sequence in use—and listen for valid synchronization information. If a SYNC message is detected, the listening device immediately has both coarse and fine synchronization, and can begin the registration process.
- If SYNC is not detected, but a termination message is, then the device has acquired coarse synchronization. The particulars of the hopping sequence are known, but the boundaries of the dwells are not. To acquire fine synchronization, it begins hopping at the indicated hopping rate, listening for SYNC. If SYNC is not detected after a reasonable number of hops, preferably 12 or 15, the device reverts to camping.
- The worst case scenario for synchronization is to synchronize to a single NET that is idle. Given a 79 frequency hopping sequence, one Access Interval per hop, and SYNC transmissions every third Access Interval if the NET is idle, it may take nine cycle times to guarantee that a SYNC transmission will be detected with 99.5% probability. At 50 hops per second, synchronization could require as long as 14 seconds. At 100 hops per second, 7 seconds is required.
- At 2 Access Intervals per hop, a SYNC transmission is guaranteed to occur every frequency over 2 cycles of the hopping sequence. Six cycles are required for 99.5% probability of acquisition, corresponding to 19 seconds at 25 hops per second.
- At 4 Access Intervals per hop, at least one SYNC is guaranteed to occur each hop. Three cycles of the hopping sequence are required for 99.5% acquisition probability. At 12.5 hops per second, this also requires 19 seconds.
- This illustrates the advantage of scalability. A device that uses an acquisition algorithm suitable for 2 or 4 Access Intervals per hop will also acquire a NET that hops at 1 Access Interval per hop. The algorithm may be as follows:
-
- 1. The device scans candidate frequencies until it finds one with no Received Signal Strength Indicator indication.
- 2. The device remains on the frequency for 6.32
seconds 2 Access Interval/hop @ 25 Hops/second x second x 1, or until it detects a SYNC message or a valid termination message. - 3. If SYNC is detected, the device synchronizes its internal clock to the SYNC, and begins hopping with the NET for the next 11 hops. It may attempt registration after detecting valid SYNC and any Reservation Opportunity. If synchronization is not verified by detection of SYNC within the 11 hops, the acquisition algorithm is reinitialized.
- 4. If a message termination (either an ACK or CLEAR) is detected, the device immediately hops to the next frequency in the sequence and waits for the SYNC. It is coarsely synchronized to the NET but has a timing offset from the NET clock.
- When the next SYNC is received, the device synchronizes its clock to the NET clock and initiates registration. If SYNC is not received within a dwell time, the device hops to the next frequency in sequence. This continues until SYNC is attained, or until 15 hops have passed without receiving SYNC, after which the acquisition sequence is restarted.
-
- 5. If coarse acquisition is not obtained within 6.3 seconds, the device selects another frequency and repeats the process beginning with
step 2.
- 5. If coarse acquisition is not obtained within 6.3 seconds, the device selects another frequency and repeats the process beginning with
- Camping provides a worst case acquisition performance that is perceptibly slow to the human user of a portable device. The preferred approach has the receiver scan all potential frequencies in ascending order, at 125 μsec increments. When the highest frequency is reached, the search begins again at the lowest frequency. The 125 μs sampling rate is much faster than the 250 μsec channel switching time specification of the RF modem. This is possible because the overall switching time specification applies to worst case frequency switching intervals, i.e., from the highest to the lowest operating frequency. By switching a single channel at a time, switching may be maintained over frequency intervals very near a synthesizer phase detectors' phase lock range, allowing nearly instantaneous frequency switching. The change from highest to lowest frequency at the end of the scan requires the standard 250 μsec.
- The 125 μsec monitoring interval allows 85 μs to ascertain if receive clock has been detected prior to switching to the next frequency. The monitoring interval should be selected to be non-periodic with respect to the access interval. For example, the 125 μsec interval allows the entire hopping sequence to be scanned 2(n+1) times in a 20 ms access interval.
- If clock is recovered at any frequency, the receiver remains on frequency for a Reservation Opportunity and initiates channel access through the procedure described above. The scanning approach is less deterministic in terms of acquisition probability than camping, but the search time required for 99.5% acquisition probability is about 80 Access Intervals, or three times faster than that for camping.
- A hybrid approach that scans only three or four consecutive frequencies incorporates the deterministic aspects of camping with some of the improved performance of the scanning algorithm. For scanning over a small number of frequencies an up/down scan is preferred, i.e., 1,2,3,2,1,2,3 since all frequency changes can be accomplished at the faster switching rate. The end frequencies are visited less often than those in the center. The number of frequencies used, e.g., 3 or 4, is selected so that all can be scanned during the preamble duration of a minimum length transmission.
- All devices are required to have unique 48 bit global addresses. Local 16 bit addresses will be assigned for reduced overhead in communications. Local addresses will not be assigned to devices whose global addresses are not on an authentication list maintained in each access point and routinely updated over the infrastructure.
- Once a device has attained synchronization, it must register with the control point to be connected with the NET. It initiates this by sending a Request for Poll indicating a registration request, and including its global address. The control point will register the device, and provide a short Network Address as an outbound message. The Control point will generate the short address if it is a single NET, or exchange the global address for a short Network Address with a Network Address Server if the NET is part of a larger infrastructured network of a premises LAN.
- Once a device is synchronized to a NET, it must periodically update its local clock to the NET clock communicated in the SYNC message. The SYNC message contains a character designated as the SYNC character that transfers the NET clock synchronization. This may be the beginning or ending FLAG in the SYNC message, or a specific character within the message.
- The maximum expected frequency error between NET and device local clocks is 100 parts per million. To maintain a 50 μs maximum clock error, the local device clock must be re-synchronized at 500 ms intervals. At 20 ms per access interval, a non-sleeping device has up to 26 SYNC opportunities within that period in which to re-synchronize and maintain required accuracy.
- As mentioned above, it is desirable that battery powered devices have the capability to sleep, or power off, for extended periods of time to conserve power. The term sleeping terminal in this instance may refer to a device that powers down its radio communication hardware to save power while maintaining other functions in an operational state, or a device that power manages those functions as well. In the power managed state, the device must maintain its hop clock so that full acquisition is not required every time power management is invoked.
- Devices that must sleep to manage their power consumption use Priority SYNC Messages to maintain synchronization. Priority SYNC Messages occur every three Access Intervals. In times of low NET activity, non-priority SYNC messages are omitted. By coordinating power management with Priority SYNC Messages, power managed devices can be guaranteed to wake up for Access Intervals where SYNCs will be present, even if the NET activity is low during the sleep period.
- A sleeping device with no transmission requirements may sleep for eight 20 ms access intervals, and wake only for the SYNC and Reservation Poll at the beginning of the ninth Access Interval to monitor pending messages before returning to the sleep state, for a duty cycle of less than 5%. This provides three opportunities to synchronize to the NET clock within a 540 ms window. A flow chart depicting a device sleeping for several access intervals is shown in
FIG. 17 . - Devices may also sleep for longer periods of time, at the risk of losing fine synchronization. They may compensate by advancing their local clocks to account for the maximum timing uncertainty. For example, a terminal could sleep for 5 seconds without re-synchronizing by waking up 500 microseconds before it expects an Access Interval to begin, and successfully receive SYNC messages. This technique is valid for extended periods of time, up to the point where the maximum timing error approaches 50% of an Access Interval. A flow chart depicting a device sleeping for several seconds is shown in
FIG. 18 . - A power managed device that requires communication during a sleep period may immediately wake and attempt access to the NET at the next available Reservation Opportunity.
- A device that requires communications may be able to register with one of several NETs operating in its vicinity, with transmissions occurring on many frequencies simultaneously. A good strategy is to synchronize to a NET that provides an acceptable communication link, then monitor HELLO messages to determine other candidate NETs before attaching to a particular NET by registering with the control point device.
- As described above, a spontaneous wireless local area network or spontaneous LAN is one that is established for a limited time for a specific purpose, and which does not use the premises LAN to facilitate communications between devices or provide access to outside resources. Use of spontaneous LAN allows portable devices to share information, files, data, etc., in environments where communication via the premises LAN is not economically justifiable or physically possible. A spontaneous LAN capability also allows portable/mobile devices to have an equally portable network. Peripheral and vehicular LANs are examples of such spontaneous LANs.
- Requirements for spontaneous LAN differ from an infrastructured premises LAN in several significant areas. The number of devices in a spontaneous LAN is likely to be smaller than the number that a single NET in a premises LAN must be capable of supporting. In addition, coverage areas for spontaneous LANs are typically smaller than coverage areas for an access point participating in the premises LAN. In a spontaneous LAN, communication often takes place over relatively short distances, where devices are within line of sight of each other.
- In an premises LAN, the majority of communications are likely to involve accessing communication network resources. For example, portable devices with limited processing capabilities, memory, and power supplies are able to access large databases or powerful computing engines connected to the AC power grid. Access points within the premises LAN are well suited to the role of Control Points for managing synchronization and media access within each NET.
- In a spontaneous LAN, however, communications are limited to exchanges with spontaneous NET constituents. Additionally, NET constituents may potentially leave at any time, making it difficult to assign control point responsibilities to a single device. A shared mechanism for synchronization and media access is preferable in most cases.
- In a spontaneous LAN, battery power limitations may preclude assignment of a single device as a control point. The routine transmission of SYNC and access control messages places a significant power drain on a portable, battery powered device. Also, the control point architecture dictates that transmissions intended for devices other than the control point be stored and forwarded to the destination device, further increasing battery drain, and reducing system throughput.
- Moreover, the use of scheduled transmission in a premises LAN is likely to differ from use in a spontaneous LAN. For example, unlike the premises LAN, in the spontaneous LAN, applications such as massaging and two way (i.e., full-duplex) voice communications may only occasionally be used, whereas video transmission and telemetry exchange may be prevalent.
- To promote compatibility and integration with the premises LAN, operational differences required by multiple participating devices should be minimized. For example, selecting relatively close frequency bands for each LAN assists the design of a multiple LAN-transceiver, reducing circuitry, cost, power, weight and size while increasing reliability. Similarly, selecting communication protocols so that the spontaneous LAN protocol constitutes a subset or superset of premises LAN may enable a given device to more effectively communication in both LANs, while minimizing both the overall protocol complexity and potentially limited memory and processing power.
- Use of frequency hopping is desirable in premises LAN because of its ability to mitigate the effects of interference and frequency selective fading. In the case of the latter, frequency hopping allows systems to be installed with less fade margin than single frequency systems with otherwise identical radio modem characteristics, providing improved coverage.
- The potentially smaller coverage area requirement of spontaneous LANs, however, allows single frequency operation to be considered for some applications, e.g., such as a peripheral LAN. Regulatory structures are in place in some countries to allow single frequency operation in the same bands as frequency hopping systems, providing that single frequency devices operate at reduced power levels. The lower transmit power of single frequency operation and elimination of periodic channel switching are desirable methods of reducing battery drain. The choice of single frequency or frequency hopped operation is dictated by the coverage requirements of the network, and may be left as an option to device users.
- As noted earlier, the basic Access Interval structure is suited to single frequency operation as well as to frequency hopping. SYNC messages in a single frequency system substitute a single frequency indication in the hopping sequence identifier field.
- A spontaneous LAN comes into existence when two or more devices establish communications, and ceases when its population falls to less than two. Before a spontaneous LAN can be established, at least two devices must agree upon a set of operating parameters for the network. Such agreement may be preprogrammed else exchanged and acknowledged prior to establishing the spontaneous LAN. Once the spontaneous LAN is established, other devices coming into the network must be able to obtain the operating parameters and acquire access.
- More specifically, to establish a spontaneous LAN, a computing device must first identify at least one other network device with which spontaneous LAN communication is desired. To identify another network device, the computing device may play an active or passive role. In an active role, the computing device periodically broadcasts a request to form spontaneous LAN with either a specific network device or, more likely, a specific type of network device. If a network device fitting the description of the request happens to be in range or happens into range and is available, it responds to the periodic requests to bind with the computing device, establishing the spontaneous LAN. Alternately, the network device may take a passive role in establishing the spontaneous LAN. In a passive role, the computing device merely listens for a request to form a spontaneous LAN transmitted by the appropriate network device. Once such a network device comes into range, the computing device responds to bind with the network device, establishing the spontaneous LAN.
- The choice of whether a device should take a passive or active role is a matter of design choice. For example, in one embodiment where peripheral devices have access to AC power, the roaming computer terminals take a passive role, while the peripheral devices take a more active role. Similarly, in another embodiment where a vehicle terminal has access to a relatively larger battery source, an active role is taken when attempting to form a spontaneous LAN, i.e., a vehicular LAN, with a hand-held computing device.
- Binding, a process carried out pursuant to a binding protocol stored in each network device, may constitute a very simple process such as might exist when creating a spontaneous LANs that operates on a single frequency channel. Under such a scenario, a simple acknowledge handshake between the computing terminal and the other network device may be sufficient to establish a spontaneous LAN pursuant to commonly stored, preprogrammed operating parameters. However, more complex binding schemes may also be implemented so as to support correspondingly more complex spontaneous LANs as proves necessary. An example of a more complex binding scheme is described below.
- It is desirable in some large spontaneous LANs for one device to be designated as a fully functional control point, providing identical NET operation to a single NET in the premises LAN. Providing that all devices share a hopping table and encryption key, the designated device would initiate control point activities, and other devices would synchronize to the designated unit. A device with greater battery capacity, or one that can be temporarily connected to AC power is best suited to the dedicated control point function. This architecture is applicable to Client-Server applications (where the server assumes the control point function), or to other applications where a single device is the predominant source or destination of communications. A portable device used as a dedicated control point is required to have additional programming and memory capacity to manage reservation based media access, pending message lists, and scheduled service slot allocations.
- In embodiments where communication requirements of a spontaneous LAN are largely peer to peer, there may be no overwhelming candidate for a dedicated Control Point. Thus, in such cases, the Control Point function is either distributed among some or all the devices within the spontaneous LAN. In such scenarios, the interleaved Access Interval approach used for wireless access points is employed. Initially, control point responsibilities are determined during the binding process. Users may designate or redesignate a Control Point device when several candidates are available.
- For spontaneous LANs, access intervals may be simplified to reduce power consumption, program storage and processing power requirements for portable devices used as control points. Control Point devices transmit SYNC, pending message lists, and Time Division Multiple Access slot reservations normally, but only use the single slot reservation Poll (Idle Sense Multiple Access). The reservation poll contains a field indicating reduced control point functionality. This places other devices in a point-to-point communication mode, using the Implicit Idle Sense Algorithm. The probability factor p communicated in the reservation poll is used for the Implicit Idle Sense algorithm. Control point devices may use the deferred SYNC mechanism for light system loading, transmitting Priority SYNC every third Access Interval to further decrease their transmission requirements. Control point devices must monitor the reservation slot for messages addressed to them, but may sleep afterwards.
- Request for Polls initiated under Implicit Idle Sense use point-to-point addressing, indicating the address of the destination device directly, rather than the control point device. This eliminates the need for the Control Point device to store and forward transmissions within the spontaneous LAN. The device detecting its address in a Request for Poll begins a session, after employing the Implicit Idle Sense algorithm, by Polling the source address identified in the Request for Poll. The terminating ACK and CLEAR messages contain an Explicit Idle Sense probability factor equal to that in the original reservation poll.
- To allow for power managed devices, the Control Point device maintains a pending message list. Devices that have been unable to establish communication with a sleeping device initiate a session with the Control Point device to register the pending message. Upon becoming active, the sleeping device will initiate a Poll to the device originating the pending message. The Control Point device will eliminate the pending message indication by aging, or by receipt of communication from the destination device clearing the pending message. Control point devices are not required to store pending messages, only addresses.
- As mentioned above, HELLO messages are broadcast to indicate changes in NET parameters. HELLO messages may be omitted to simplify the Control Point function in spontaneous LANs.
- Devices are assigned local addresses upon registration with the Control Point device. Devices may communicate an alias that identifies the device user to other users to the Control Point device where it is stored in an address table. The address table may be obtained by other network constituents by querying the Control Point device. A peripheral LAN is a type of spontaneous LAN which serves as a short range interconnect between a portable or mobile computing device (MCD) and peripheral devices.
- Designers of portable products are constantly challenged with reducing size, weight, and power consumption of these devices, while at the same time increasing their functionality and improving user ergonomics. Functions that may be used infrequently, or which are too large to fit within the constraints of good ergonomic design may be provided in peripheral devices, including printers, measurement and data acquisition units, optical scanners, etc. When cabled or otherwise physically connected to a portable product, these peripherals often encumber the user, preventing freedom of movement or mobility. This becomes more problematic when use of more than one peripheral is required.
- A second consideration for portable product design is communication docking. A communication dock is a device that holsters or houses a portable unit, and provides for communication interconnection for such tasks as program downloading, data uploading, or communication with large printers, such as those used for printing full sized invoices in vehicular applications. Communication docking of a portable unit may also involve power supply sharing and/or charging.
- The requirement for communication docking capability forces newer portable product designs to be mechanically compatible with older docking schemes, or may require that new docks, or adapters, be developed for each new generation of portable device. Product specific docking approaches eliminate compatibility between devices manufactured by different suppliers. This has hindered development of uniform standards for Electronic Data Interchange between portable devices and fixed computing systems.
- Physical connection between a portable device with a peripheral or communication dock also hinders user efficiency. Peripheral devices are generally attached with cable. If a peripheral is small enough to be carried or worn on a belt, the mobility of the user may be maintained. If a user must carry a hand-held portable device that is connected to a belt mounted peripheral, the assembly cannot be set down while a task that requires movement to a location several feet away is undertaken unless the portable device and peripheral are disconnected. Likewise, connection to peripherals too large to be portable requires the user to frequently connect and disconnect the device and the peripheral.
- Use of wireless peripheral LAN interconnection greatly simplifies the task of portable devices communicating with peripherals. In doing so, wireless connectivity allows improved ergonomics in portable product design, flexibility in interconnection to one or more peripherals, freedom of movement over a radius of operation, forward and backward compatibility between portable units and peripherals, and potential communications among products manufactured by different vendors.
- Constituents within a peripheral LAN generally number six or fewer devices. One roaming computing device and one or two peripherals comprise a typical configuration. Operating range is typically less than fifty feet.
- Because the computing devices generally control the operation of peripheral devices, in a peripheral LAN a master/slave type protocol is appropriate. Moreover, roaming computing devices serving as master are well suited to the role of Control Points for managing synchronization and media access within each peripheral LAN. All peripheral communications are slaved to the master.
- In a peripheral LAN, roaming mobile or portable computing devices and wireless peripherals may all operate from battery power. Operating cycles between charging dictate use of power management techniques.
- Although all participants in a peripheral LAN might also be configured to directly participate in the premises LAN, the tradeoff in cost, power usage and added complexity often weighs against such configuration. Even so, participants within a peripheral LAN can be expected to function in a hierarchical manner, through a multiple participating device, with the premises LAN. Thus, the use of a much simpler, lower-power transceiver and associated protocol may be used in the peripheral LAN.
- As previously described, a roaming computing device serving as a master device may itself be simultaneously attempting to participate in other networks such as the premises or vehicular LANs. Considerable benefits arise if the radio and processing hardware that supports operation within the wireless network can also support such operation. For example, a device that is capable of frequency hopping is inherently suited to single frequency operation. If it can adjust transmitter power level and data rate to be compatible with the requirements of the peripheral LAN, it can function in both systems. The major benefits of common transceiver hardware across LANs include smaller product size, improved ergonomics, and lower cost.
- Specifically, in one embodiment, radio communication on the premises LAN, as described herein, takes place using radio transceivers capable of performing frequency-hopping. To communicate on a peripheral LAN, such transceivers could also utilize frequency-hopping at a lower power. However, such transceivers are relatively expensive in comparison to a lower power, narrow-band, single frequency transceivers. Because of the cost differential, it proves desirable to use the single frequency transceivers for all peripheral devices which will not participate in the premises LAN. Therefore, the more expensive, frequency-hopping transceivers which are fitted into roaming computing devices are further designed to stop hopping and lock into the frequency of the single frequency transceiver, allowing the establishment of peripheral LANs.
- Instead of frequency hopping, the peripheral LAN may also use narrow-band, single frequency communication, further simplifying the radio transceiver design for commonality. In another embodiment of the peripheral LAN transceivers, operation using one of a plurality of single frequency channels is provided. Thus, to overcome interference on one channel, the transceiver might select from the remaining of the plurality an alternate, single operating frequency with lesser channel interference. To accommodate the plurality of single frequency channels, the peripheral LAN transceivers may either communicate an upcoming frequency change so that corresponding peripheral LAN participants can also change frequency, or the transceivers may be configured to use frequency synthesis techniques to determine which of the plurality a current transmission happens to be.
- The Access Interval structure is also an appropriate choice for peripheral LAN operations. In one embodiment, to provide for simplicity and tighter integration, the Access Interval for the peripheral LAN is a subset of the Access Interval used in the premises LAN. HELLO messages, Implicit Idle Sense, Data Rate Switching, and scheduled services are not implemented. Peripheral devices normally sleep, activate their receivers for SYNC transmissions from the participating master device, and resume sleeping if no pending messages are indicated and they have no inbound transmission requirements. Access Intervals occur at regular intervals, allowing for power management. Access Intervals may be skipped if the master has other priority tasks to complete.
- To initialize the peripheral LAN, a device desiring initialization, a master device, selects a single operating frequency by scanning the available frequencies for one with no activity. A typical master device might be a roaming computing device desiring access to a local peripheral. Default values for other parameters, including Access Interval duration, are contained within each participant's memory. Such parameters may be preadjusted in each participant to yield specific performance characteristics in the peripheral LAN.
- Once a master device identifies a single frequency, slaves, which are generally peripherals, are brought into the peripheral LAN through a process called binding. Binding is initiated by the master device by invoking a binding program contained therein. Slaves, such as peripherals, are generally programmed to enter a receptive state when idle. Thus, in one embodiment, the master device accomplishes binding by transmitting Access Intervals of known duration sequentially on a series of four frequencies spread throughout the available frequency range. The specific frequencies and Access Interval durations used are stored as parameters in all potential participating devices. A 250 KBPS transfer rate is appropriate in some embodiments of the peripheral LAN, reflecting a balance between performance and complexity in peripheral devices.
- A slave, e.g., a peripheral, responds to the binding attempts by the master device on a given frequency until the slave successfully receives and establishes communication with the master device. If they do not establish communication after four Access Intervals, the slave switches to the next frequency for four Access Interval periods. Once communication is established, the slave registers with the master and obtains the master device's selected operating frequency and related communication parameters. When all slave devices have been bound, the master terminates the binding program and normal operation at the selected single frequency may begin.
- Referring to
FIG. 15 , in a hierarchical network, peripheral LAN masters use asecondary access interval 1501 that is synchronized to the Access Interval of a parent (premises) LAN control point. Peripheral LAN Access Intervals occur less frequently than premises LAN Access Intervals, e.g., every other or every third Priority SYNC Access Interval. - During the premises LAN Access Interval, the peripheral LAN master device monitors the premises LAN control point for
SYNC 1503reservation poll 1505 and exchanges inbound and outbound message according to the normal rules of the access protocol. The master switches to the peripheral LAN frequency, and transmits itsown SYNC frame 1507 during thesession period 1509 of its parent control point allowing communication with its peripherals. The peripheral LAN Access Interval is generally shorter than the premises LAN Access Interval, so that it does not extend beyond the premises LAN Access Interval boundary. At the end of the peripheralLAN Access Interval 1501, the master switches to the premises LAN frequency for thenext SYNC 1503. - The
secondary SYNC 1507 may only be transmitted if the peripheral LAN master is not busy communicating through the premises LAN. If a communication session is occurring, the master must defer SYNC, preventing communication with its peripherals during that Access Interval. The master must also defer SYNC if the current frequency in the LAN is prone to interference from the peripheral LAN frequency, i.e., they are the same frequency or adjacent frequencies. If two consecutive SYNCs are deferred, peripherals will activate their receivers continuously for a period of time, allowing the master to transmit during any Access Interval. This approach is also applicable when the master roams between frequency hopping NETs. Since NETs are not synchronized to one another, the devices in the peripheral LAN adjust Access Interval boundaries each time the master roams. If peripherals do not detect SYNC within a timeout period, they may duty cycle their reception to conserve battery power. - Referring to
FIG. 16 , a Roaming Algorithm Flow Diagram illustrates how a roaming computing device will select a suitable access point. Roaming computing devices operating in the infrastructured network environment formed by the access points will routinely move between access point coverage areas. The roaming computing devices are able to disconnect from their current access point communication link and reconnect a communication link to a different access point, as necessitated by device roaming. - Access points transmit HELLO messages to devices in their coverage area. These HELLO messages communicate to roaming computing devices the cost of connection through the access point, addresses of neighboring access points, and the cost of connection through these neighboring access points. This information allows roaming computing devices to determine the lowest cost connection available and to connect to the access point with the lowest cost.
- In addition, access point HELLO message may include communication parameters of neighboring access points, such as frequency hopping sequences and indices, spread spectrum spreading codes, or FM carrier channel frequencies. This information allows roaming computing devices to roam and change access point connections without going through a full acquisition phase of the new access point's parameters.
- Roaming computing devices initially select and register with an access point control point on the basis of link quality: signal strength and cost information transmitted within HELLO messages. A device will remain attached to a particular access point until the link quality degrades below an acceptable level; then it will attempt to determine if an alternative access point connection is available. The device initiates a roaming algorithm, using neighbors information from the most recent HELLO message to attempt connection with another candidate access point. If connection fails, another candidate from the neighbors list will be selected, and the process repeated. Once connection is made with an alternative access point, the device will monitor signal strength and data errors to determine link quality. If link quality is acceptable, the device will continue monitoring until a HELLO message is received. If the cost is acceptable, it will register with the new access point, and the access point will update the spanning tree over the infrastructure. If link quality or cost is unacceptable, another candidate from the neighbors list is selected and the process repeated. This continues until an acceptable connection is established. If one cannot be established, the device must return to the original access point connection or employ the initial acquisition algorithm.
-
FIG. 28 a illustrates an embodiment of the hierarchical communication system according to the present invention communication is maintained in a warehouse environment. Specifically, a worker utilizes a roaming computing device, acomputer terminal 3007, and acode reader 3009 to collect data such as identifying numbers or codes on warehoused goods, such as thebox 3010. As the numbers and codes are collected, they are forwarded through the network to ahost computer 3011 for storage and cross-referencing. In addition, thehost computer 3011 may, for example, forward cross-referenced information relating to the collected numbers or codes back through the network for display on the terminal 3007 or for printing on aprinter 3013. Thehost computer 3011 can be configured as a file server to perform such functions. Similarly, the collected information may be printed from thecomputer terminal 3007 directly on theprinter 3013. Other exemplary communication pathways supported include message exchanges between thecomputer terminal 3007 and other computer terminals (not shown) or thehost computer 3011. - The
host computer 3011 provides the terminal 3007 with remote database storage, access and processing. However, the terminal 3007 also provides for local processing within its architecture to minimize the need to access theremote host computer 3011. For example, the terminal 3007 may store a local database for local processing. Similarly, the terminal 3007 may run a variety of application programs which never, occasionally or often need access to theremote host computer 3011. - Many of the devices found in the illustrative network are battery powered and therefore must conservatively utilize their radio transceivers. For example, the hand-held
computer terminal 3007 receives its power from either an enclosed battery or a forklift battery (not shown) via a communication dock within theforklift 3014. Similarly, thecode reader 3009 operates on portable battery power as may theprinter 3013. The arrangement of the communication network, communication protocols used, and data rate and power level adjustments help to optimize battery conservation without substantially degrading network performance. - In the illustrated embodiment shown in
FIG. 28 a, the hierarchical communication system of the present invention consists of a premises LAN covering a building or group of buildings. The premises LAN in the illustrated embodiment includes ahardwired backbone LAN 3019 andaccess points host computer 3011 and any other non-mobile network device located in the vicinity of thebackbone LAN 3019 can be directly attached to thebackbone LAN 3019. However, mobile devices and remotely located devices must maintain connectivity to thebackbone LAN 3019 through either a single access point such as theaccess point 3015, a multi-hop network of access points such as is illustrated by theaccess points access points access points 3017 may be desirable. Otherwise, thebackbone LAN 3019 must be extended to connect all of theaccess points 3017 directly to provide sufficient radio coverage. Through the premises LAN, relatively stable, longer range wireless and hardwired communication is maintained. - Because roaming computing devices, such as the hand-held
computer terminal 3007, cannot be directly hardwired to thebackbone LAN 3019, they are fitted with RF transceivers. To guarantee that such a network device can directly communicate on the premises LAN with at least one of theaccess points access points access points - For example, the desire by a roaming terminal to access peripheral devices such as the
printer 3013 andmodem 3023, results in the roaming terminal establishing a peripheral LAN with the peripheral devices. Similarly, a peripheral LAN might be established when needed to maintain local communication between acode scanner 3009 and theterminal 3007. In an exemplary embodiment, theprinter 3013 are located in a warehouse dock with the sole assignment of printing out forms based on the code information gathered from boxes delivered to the dock. In particular, as soon as the code reader gathers information, it relays the information along a peripheral LAN to theterminal 3007. Upon receipt, the terminal 3007 communicates via the premises LAN to thehost computer 3011 to gather related information regarding a given box. Upon receipt of the related information, the terminal 3007 determines that printing is desired with theprinter 3013 located at the dock. When theforklift 3014 enters the vicinity of the dock, the terminal 3007 establishes a peripheral LAN with theprinter 3013 which begins printing the collected code information. - To carry out the previous communication exchange, the
printer 3013 andcode reader 3009 are fitted with a lower power peripheral LAN transceivers for short range communication. Thecomputer terminal 3007 transceiver is not only capable of peripheral LAN communication, but also with the capability of maintaining premises LAN communication. In an alternate exchange however, thecode reader 3009 might be configured to participate on both LANs, so that thecode reader 3009 participates in the premises LAN to request associated code information from thehost computer 3011. In such a configuration, either thecode reader 3009 or terminal 3007 could act as the control point of the peripheral LAN. Alternately, both could share the task. - With capability to participate in the peripheral LAN only, the
code reader 3009, or any other peripheral LAN participant, might still gain access to the premises LAN indirectly through the terminal 3007 acting as a relaying device. For example, to reach thehost computer 3011, thecode reader 3009 first transmits to thecomputer terminal 3007 via the peripheral LAN. Upon receipt, thecomputer terminal 3007 relays the transmission to one of theaccess points host 3011. Communication from thehost 3011 to thecode reader 3009 is accomplished via the same pathway. - It is also possible for any two devices with no access to the premises LAN to communicate to each other. For example, the
modem 3023 could receive data and directly transmit it for printing to theprinter 3013 via a peripheral LAN established between the two. Similarly, thecode reader 3009 might choose to directly communicate code signals through a peripheral LAN to other network devices via themodem 3023. - In an alternate configuration, a peripheral LAN access point 3021 is provided which may be directly connected to the backbone LAN 3019 (as shown), acting as a direct access point to the
backbone LAN 3019, or indirectly connected via theaccess points -
FIG. 28 b illustrates other features of the present invention in the use of spontaneous LANs in association with a vehicle which illustrate the capability of automatically establishing a premises and a peripheral LAN when moving in and out of range to perform services and report on services rendered. In particular, like theforklift 3014 ofFIG. 28 a, adelivery truck 3033 provides a focal point for a spontaneous LAN utilization. Within thetruck 3033, astorage terminal 3031 is docked so as to draw power from thetruck 3033's battery supply. Similarly, acomputer terminal 3007 may either be docked or ported. Because of greater battery access, thestorage terminal 3031 need only be configured for multiple participation in the premises, peripheral and vehicular LANs and in a radio WAN, such as RAM Mobile Data, CDPD, MTEL, ARDIS, satellite communication, etc. Thestorage terminal 3031, although also capable of premises and peripheral LAN participation, need only be configured for vehicular LAN participation. - Prior to making a delivery, the truck enters a docking area for loading. As goods are loaded into the truck, the information regarding the goods is down-loaded into the
storage terminal 3031 via the terminal 3007 or code reader 3009 (FIG. 28 a) via the premises or peripheral LAN communications. This loading might also be accomplished automatically as theforklift 3014 comes into range of thedelivery truck 3033, establishes or joins the peripheral LAN, and transmits the previously collected data as described above in relation toFIG. 28 a. Alternately, loading might also be accomplished via the premises LAN. - As information regarding a good is received and stored, the
storage terminal 3031 might also request further information regarding any or all of the goods via the peripheral LAN's link to thehost computer 3011 through the premises LAN. More likely however, thestorage terminal 3031 if appropriately configured would participate on the premises LAN to communicate directly with thehost computer 3011 to retrieve such information. - The peripheral LAN access point 3021 if located on the dock could provide a direct low power peripheral LAN connection to the
backbone LAN 3019 and to thehost computer 3011. Specifically, in one embodiment, the access point 3021 is located on the dock and comprises a low power (“short hop”) radio operating in a frequency hopping mode over a 902-928 MHz frequency band. However, the access point 3021 can instead be configured to communicate using, for example, infrared, UHF, 2.4 GHz or 902 MHz spread spectrum direct sequence frequencies. - Once fully loaded and prior to leaving the dock, the
storage device 3031 may generate a printout of the information relating to the loaded goods via a peripheral LAN established with theprinter 3013 on the dock. In addition, the information may be transmitted via theperipheral LAN modem 3023 to a given destination site. - As illustrated in
FIG. 28 c, once thestorage terminal 3031 and hand-held terminal 3007 moves out of range of the premises and peripheral LANs, i.e., thetruck 3033 drives away from the dock, the vehicular LAN can only gain access to the premises LAN via the more costly radio WAN communication. Thus, although thestorage terminal 3031 might only be configured with relaying control point functionality, to minimize radio WAN communication, thestorage terminal 3031 can be configured to store relatively large amounts of information and to provide processing power. Thus, the terminal 3007 can access such information and processing power without having to access devices on the premises LAN via the radio WAN. - Upon reaching the destination, the
storage terminal 3031 may participate in any in range peripheral and premises LAN at the delivery site dock. Specifically, as specific goods are unloaded, they are scanned for delivery verification, preventing delivery of unwanted goods. The driver is also informed if goods that should have been delivered are still in the truck. As this process takes place, a report can also be generated via a peripheral or premises LAN printer at the destination dock for receipt signature. Similarly, the peripheral LAN modem on the destination dock can relay the delivery information back to thehost computer 3011 for billing information or gather additional information needed, avoiding use of the radio WAN. - If the
truck 3033 is used for service purposes, thetruck 3033 leaves the dock in the morning with the addresses and directions of the service destinations, technical manuals, and service notes which have been selectively downloaded from thehost computer 3011 via either the premises or peripheral LAN to thestorage terminal 3031 which may be configured with a hard drive and substantial processing power. Upon pulling out of range, thestorage terminal 3031 and thecomputer terminal 3007 automatically form an independent, detached vehicular LAN. Alternately, theterminals storage terminal 3031 acting much like the premises LAN access points. Thus, the radio transceiver circuitry for the premises LAN participation may also be used for the vehicular LAN and, as detailed above, a peripheral LAN. Similarly, if the radio WAN chosen has similar characteristics, it may to be incorporated into a single radio transceiver. - At each service address, the driver collects information using the terminal 3007 either as the data is collected, if within vehicular LAN transmission range of the
storage terminal 3031, or as soon as the terminal 3007 comes within range. Any stored information withinstorage terminal 3031 may be requested via the vehicular LAN by the hand-heldterminal 3007. Information not stored within the vehicular LAN may be communicated via a radio WAN as described above. - Referring again to
FIG. 28 b, upon returning to the dock, thestorage terminal 3031, also referred to herein as a vehicle terminal, joins in or establishes a peripheral LAN with the peripheral LAN devices on the dock, if necessary. Communication is also established via the premises LAN. Thereafter, thestorage terminal 3031 automatically transfers the service information to thehost computer 3011 which uses the information for billing and in formulating service destinations for automatic downloading the next day. -
FIG. 29 a is a diagrammatic illustration of another embodiment using a peripheral LAN to supporting roaming data collection by an operator according to the present invention. As anoperator 3061 roams the warehouse floor, he carries a peripheral LAN comprising the terminal 3007,code reader 3009 and aportable printer 3058 with him. The operator collects information regarding goods, such as thebox 3010, with thecode reader 3009 and theterminal 3007. If the power resources are equal, the terminal 3007 may be configured and designated to also participate in the premises LAN. - Corresponding information to the code data must be retrieved from the
host computer 3011. The collected code information and retrieved corresponding information can be displayed on theterminal 3007. After viewing for verification, the information can be printed on theprinter 3058. Because of this data flow requirement, thecomputer terminal 3007 is selected as the peripheral LAN device which must also carry the responsibility of communicating with the premises LAN. - If during collection, the operator decides to power down the
computer terminal 3007 because it is not needed, the peripheral LAN becomes detached from the premises LAN. Although it might be possible for the detached peripheral LAN to function, all communication with thehost computer 3011 through the premises LAN is placed in a queue awaiting reattachment. As soon as the detached peripheral LAN comes within range of an attached peripheral LAN device, i.e., a device attached to the premises LAN, the queued communications are relayed to the host. It should be clear from this description that the peripheral LAN may roam in relation to a device attached to the premises LAN (“premises LAN device”). Similarly, the premises LAN device may roam in relation to the peripheral LAN. The roaming constitutes a relative positioning. Moreover, whenever a peripheral LAN and a master device move out of range of each other, the peripheral LAN may either poll for or scan for another master device for attachment. The master device may constitute a premises LAN device, yet need not be. - To avoid detachment when the terminal 3007 is powered down, the
code reader 3009 may be designated as a backup to the terminal 3007 for performing the higher power communication with the premises LAN. As described in more detail below in reference toFIG. 33 c regarding the idle sense protocol, whenever thecode reader 3009 determines that the terminal 3007 has stopped providing access to the premises LAN, thecode reader 3009 will take over the role if it is next in line to perform the backup service. Thereafter, when thecomputer terminal 3007 is powered up, it monitors the peripheral LAN channel, requests and regains from thecode reader 3009 the role of providing an interface with the premises LAN. This, however, does not restrict thecode reader 3009 from accessing the premises LAN although thereader 3009 may choose to use thecomputer terminal 3007 for power conservation reasons. - In addition, if the
computer terminal 3007 reaches a predetermined low battery threshold level, the terminal 3007 will attempt to pass the burden of providing premises LAN access to other peripheral LAN backup devices. If no backup device exists in the current peripheral LAN, thecomputer terminal 3007 may refuse all high power transmissions to the premises LAN. Alternatively, thecomputer terminal 3007 may either refuse predetermined select types of requests, or prompt the operator before performing any transmission to the premises LAN. However, thecomputer terminal 3007 may still listen to the communications from the premises LAN and inform peripheral LAN members of waiting messages. -
FIG. 29 b is a diagrammatic illustration of another embodiment of a peripheral LAN which supports roaming data collection by an operator according to the present invention. An operator is equipped with aperipheral LAN 3065 comprising ahousing 3067, which incorporates aprinter 3069 and adock 3071, aroaming computing terminal 3073, and acode reader 3075. The operator may roam a warehouse floor or a shipping dock and collect and retrieve data using theperipheral LAN 3065 as discussed above with respect toFIG. 29 a. In this embodiment, the operator may elect to leave thehousing 3067, and hence the printer, in one area of the warehouse, or on the truck, and carry only thecode reader 3075 and terminal 3073. In addition, the operator may also elect to dock the terminal 3073 in thedock 3071 and carry only thecode reader 3075. In any event, the terminal is capable of communicating data to theprinter 3069 via RF signals or via thedock 3071. - The
housing 3067 may optionally include a cigarette lighterpower input cable 3077 to power theprinter 3069, and recharge the battery of the terminal 3073 via thedock 3071. Thehousing 3067 may also optionally include a wide area network radio to permit communication with a remote warehouse orstation 3079. In addition, thehousing 3067 may also be configured to include the functionality of thestorage terminal 3031 discussed above with respect toFIGS. 28 b and 28 c. - The peripheral LAN embodiments of
FIGS. 29 a and 29 b may, of course, function when detached from the premises LAN. This feature is particularly desirable in situations where attachment to the premises LAN may be more costly, such as, for example, during the remote pickup or delivery of goods by a driver. In the situation where a driver is picking up goods, the driver may, for example, use the code reader and terminal to collect and/or enter information regarding the goods, such as their origin, destination, weight, etc. The terminal may then encode the information, and transmit it to the printer so that the driver can label each box appropriately with a bar or other type of code for later identification and routing of the goods. - Once information regarding a particular pickup has been stored, either in the terminal or storage terminal, the driver may download the stored data using the WAN radio to the premises LAN host computer at the remote warehouse or
station 3079 so that the information may be used to pre-schedule further routing of the goods before the driver even arrives. Because WAN communication is costly, however, the information may instead be automatically transferred wirelessly to the premises LAN host once the driver comes into range of the premises LAN, as discussed above with respect toFIG. 28 b. Alternatively, or as a check to verify information previously transmitted to the premises LAN wirelessly, the information may be downloaded from the terminal to the premises LAN host via adocking system 3081 located at the warehouse orstation 3079. Thedocking system 3081 may also be used to recharge theterminals 3073. - Once the host computer has the information regarding the goods picked up by the driver(s), the host can download the data via RF or the
docking system 3081 to any number ofterminals 3073 used by warehouse personnel who unload the trucks. While unloading, these personnel can, for example, use a terminal 3073 and acode reader 3075 to build containers for further distribution of the goods to various destinations. Specifically, as a container is unloaded, the label previously placed on the container by the driver is scanned by thecode reader 3075, and destination information is displayed on theterminal 3073. The box may then be taken to and loaded into the container headed for the same destination. Each container may also have a label which can be scanned to verify the destination of that particular container. -
FIG. 30 is a block diagram illustrating the functionality of RF transceivers built in accordance with the present invention. Although preferably plugging into PCMCIA slots of the computer terminals and peripherals, thetransceiver 3110 may also be built-in or externally attached via available serial, parallel or ethernet connectors for example. Although the transceivers used by potential peripheral LAN master devices may vary from those used by peripheral LAN slave devices (as detailed below), they all contain the illustrated functional blocks. - In particular, the
transceiver 3110 contains aradio unit 3112 which attaches to an attachedantenna 3113. Theradio unit 3112 used in peripheral LAN slave devices need only provide reliable low power transmissions, and are designed to conserve cost, weight and size. Potential peripheral LAN master devices not only require the ability to communicate with peripheral LAN slave devices, but also require higher power radios to also communicate with the premises LAN. Thus, potential peripheral LAN master devices and other non-peripheral LAN slave devices might contain tworadio units 3112 or twotransceivers 3110—one serving the premises LAN and the other serving the peripheral LAN—else only contain a single radio unit to service both networks. - In embodiments where cost and additional weight is not an issue, a dual radio unit configuration for potential peripheral LAN master devices may provide several advantages. For example, simultaneous transceiver operation is possible by choosing a different operating band for each radio. In such embodiments, a 2.4 GHz radio is included for premises LAN communication while a 27 MHz radio supports the peripheral LAN. Peripheral LAN slave devices receive only the 27 MHz radio, while the non-potential peripheral LAN participants from the premises LAN are fitted with only the 2.4 GHz radios. Potential peripheral LAN master devices receive both radios. The low power 27 MHz peripheral LAN radio is capable of reliably transferring information at a range of approximately 40 to 100 feet asynchronously at 19.2 KBPS. An additional benefit of using the 27 MHz frequency is that it is an unlicensed frequency band. The 2.4 GHz radio provides sufficient power (up to 1 Watt) to communicate with other premises LAN devices. Another benefit of choosing 2.4 GHz or 27 MHz bands is that neither requires FCC licensing. Many different frequency choices could also be made such as the 900 MHz band, UHF, etc. Alternatively, infrared communication may be used in situations where line of sight may be achieved between devices on the network.
- In embodiments where cost and additional weight are at issue, a single radio unit configuration is used for potential peripheral LAN master devices. Specifically, in such embodiments, a dual mode 2.4 GHz radio supports both the peripheral LAN and premises LANs. In a peripheral LAN mode, the 2.4 GHz radio operates at a single frequency, low power level (sub-milliwatt) to support peripheral LAN communication at relatively close distances 20-30 feet). In a high power (up to 1 Watt) or main mode, the 2.4 GHz radio provides for frequency-hopping communication over relatively long distance communication connectivity with the premises LAN. Although all network devices might be fitted with such a dual mode radio, only peripheral LAN master devices use both modes. Peripheral LAN slave devices would only use the low power mode while all other premises LAN devices would use only the high power mode. Because of this, to save cost, peripheral LAN slave devices are fitted with a single mode radio operating in the peripheral LAN mode. Non-peripheral LAN participants are also fitted with a single mode (main mode) radio unit for cost savings.
- Connected between the
radio unit 3112 and aninterface 3110, amicroprocessor 3120 controls the information flow between through thetransceiver 3110. Specifically, theinterface 3115 connects thetransceiver 3110 to a selected computer terminal, a peripheral device or other network device. Manydifferent interfaces 3115 are used and the choice will depend upon the connection port of the device to which thetransceiver 3110 will be attached. Virtually any type ofinterface 3110 could be adapted for use with thetransceiver 3110 of the present invention. Common industry interface standards include RS-232, RS-422, RS-485, 10BASE2 Ethernet, 10BASE5 Ethernet, 10BASE-T Ethernet, fiber optics,IBM 4/16 Token Ring, V.11, V.24, V.35, Apple Localtalk and telephone interfaces. In addition, via theinterface 3115, themicroprocessor 3120 maintains a radio independent, interface protocol with the attached network device, isolating the attached device from the variations in radios being used. - The
microprocessor 3120 also controls theradio unit 3112 to accommodate communication with the premises LAN, the peripheral LAN, or both (for dual mode radios). Moreover, the same radio might also be used for vehicular LAN and radio WAN communication as described above. For example, a radio located in a vehicle or in a hand held terminal can be configured to communicate not only within a local network, but might also be capable of receiving paging messages. - More specifically, in a main mode transceiver, the
microprocessor 3120 utilizes a premises LAN protocol to communicate with the premises LAN. Similarly, in a peripheral LAN mode transceiver, themicroprocessor 3120 operates pursuant to a peripheral LAN protocol to communicate in the peripheral LAN. In the dual mode transceiver, themicroprocessor 3120 manages the use of and potential conflicts between both the premises and peripheral LAN protocols. Detail regarding the premises and peripheral LAN protocols can be found in reference toFIGS. 33-36 below. - In addition, as directed by the corresponding communication protocol, the
microprocessor 3120 controls the power consumption of theradio 3112, itself and theinterface 3115 for power conservation. This is accomplished in two ways. First, the peripheral LAN and premises protocols are designed to provide for a low power mode or sleep mode during periods when no communication involving the subject transmitter is desired as described below in relation toFIGS. 33-34 . Second, both protocols are designed to adapt in both data rate and transmission power based on power supply (i.e., battery) parameters and range information as described in reference toFIGS. 35-36 . - In order to insure that the proper device is receiving the information transmitted, each device is assigned a unique address. Specifically, the
transceiver 3110 can either have a unique address of its own or can use the unique address of the device to which it is attached. The unique address of the transceiver can either be one selected by the operator or system designer or one which is permanently assigned at the factory such as an IEEE address. Theaddress 3121 of theparticular transceiver 3110 is stored with themicroprocessor 3120. - In the illustrated embodiments of
FIGS. 28-29 b, the peripheral LAN master device is shown as being either a peripheral LAN access point or a mobile or portable computer terminal. From a data flow viewpoint, in considering the fastest access through the network, such choices for the peripheral LAN master devices appear optimal. However, any peripheral LAN device might be assigned the role of the master, even those that do not seem to provide an optimal data flow pathway but may provide for optimal battery usage. For example, in the personal peripheral LAN ofFIG. 29 a, because of the support from thebelt 3059, the printer might contain the greatest battery capacity of the personal peripheral LAN devices. As such, the printer might be designated the peripheral LAN master device and be fitted with either a dual mode radio or two radios as master devices require. The printer, or other peripheral LAN slave devices, might also be fitted with such required radios to serve only as a peripheral LAN master backup. If the battery power on the actual peripheral LAN master, i.e., the hand-held terminal 3007 (FIG. 29 a) drops below a preset threshold, the backup master takes over. -
FIG. 31 is a drawing which illustrates an embodiment of the personal peripheral LAN shown inFIG. 29 a which designates a printer as the peripheral LAN master device. Specifically, in a personalperipheral LAN 3165, acomputer terminal 3170 is strapped to the forearm of the operator. Acode reader 3171 straps to the back of the hand of the user, and is triggered by pressing abutton 3173 with the thumb. Because of their relatively low battery energy, thecomputer terminal 3170 andcode reader 3171 are designated peripheral LAN slave devices and each contains a peripheral LAN transceiver having a broadcast range of two meters or less. Because of its greater battery energy, theprinter 3172 contains a dual mode radio, and is designated the peripheral LAN master device. -
FIG. 32 is a block diagram illustrating a channel access algorithm used by peripheral LAN slave devices according to the present invention. At ablock 3181, when a slave device has a message to send, it waits for an idle sense message to be received from the peripheral LAN master device at ablock 3183. When an idle sense message is received, the slave device executes a back-off protocol at ablock 3187 in an attempt to avoid collisions with other slave devices waiting to transmit. Basically, instead of permitting every slave device from repeatedly transmitting immediately after an idle sense message is received, each waiting slave is required to first wait for a pseudo-random time period before attempting a transmission. The pseudo-random back-off time period is generated and the waiting takes place at ablock 3187. At ablock 3189, the channel is sensed to determine whether it is clear for transmission. If not, a branch is made back to theblock 3183 to attempt a transmission upon receipt of the next idle sense message. If the channel is still clear, at ablock 3191, a relatively small “request to send” type packet is transmitted indicating the desire to send a message. If no responsive “clear to send” type message is received from the master device, the slave device assumes that a collision occurred at ablock 3193 and branches back to theblock 3183 to try again. If the “clear to send” message is received, the slave device transmits the message at ablock 3195. - Several alternate channel access strategies have been developed for carrier sense multiple access (CSMA) systems and include 1-persistent, non-persistent and p-persistent. Such strategies or variations thereof could easily be adapted to work with the present invention.
-
FIG. 33 a is a timing diagram of the protocol used according to one embodiment the present invention illustrating a typical communication exchange between a peripheral LAN master device having virtually unlimited power resources and a peripheral LAN slave device.Time line 3201 represents communication activity by the peripheral LAN master device whiletime line 3203 represents the corresponding activity by the peripheral LAN slave device. The master periodically transmits anidle sense message 3205 indicating that it is available for communication or that it has data for transmission to a slave device. Because the master has virtually unlimited power resources, it “stays awake” for theentire time period 3207 between theidle sense messages 3205. In other words, the master does not enter a power conserving mode during thetime periods 3207. - The slave device uses a binding protocol (discussed below with regard to
FIG. 33 c) to synchronize to the master device so that the slave may enter a power conserving mode and still monitor the idle sense messages of the master to determine if the master requires servicing. For example, referring toFIG. 33 a, the slave device monitors an idle sense message of the master during atime period 3209, determines that no servicing is required, and enters a power conserving mode during thetime period 3211. The slave then activates during atime period 3213 to monitor the next idle sense message of the master. Again, the slave determines that no servicing is required and enters a power conserving mode during atime period 3215. When the slave activates again during atime period 3217 to monitor the next idle sense message, it determines from a “request to send” type message from the master that the master has data for transmission to the slave. The slave responds by sending a “clear to send” type message during thetime period 3217 and stays activated in order to receive transmission of the data. The master is thus able to transmit the data to the slave during atime period 3219. Once the data is received by the slave at the end of thetime period 3221, the slave again enters a power conserving mode during atime period 3223 and activates again during thetime period 3225 to monitor the next idle sense message. - Alternatively, the slave may have data for transfer to the master. If so, the slave indicates as such to the master by transmitting a message during the
time period 3217 and then executes a backoff algorithm to determine how long it must wait before transmitting the data. The slave determines from the backoff algorithm that it must wait thetime period 3227 before transmitting the data during thetime period 3221. The slave devices use the backoff algorithm in an attempt to avoid the collision of data with that from other slave devices which are also trying to communicate with the master. The backoff algorithm is discussed more fully above in reference toFIG. 32 . - The idle sense messages of the master may also aid in scheduling communication between two slave devices. For example, if a first slave device has data for transfer to a second slave device, the first slave sends a message to the master during the
time period 3209 requesting communication with the second slave. The master then broadcasts the request during the next idle sense message. Because the second slave is monitoring the idle sense message, the second slave receives the request and stays activated at the end of the idle sense message in order to receive the communication. Likewise, because the first slave is also monitoring the idle sense message, it too receives the request and stays activated during thetime period 3215 to send the communication. -
FIG. 33 b is a timing diagram of the protocol used according to one embodiment of the present invention illustrating a typical communication exchange between a peripheral LAN master having limited power resources and a peripheral LAN slave device. This exchange is similar to that illustrated inFIG. 33 a except that, because it has limited power resources, the master enters a power conserving mode. Before transmitting an idle sense message, the master listens to determine if the channel is idle. If the channel is idle, the master transmits anidle sense message 3205 and then waits atime period 3231 to determine if any devices desire communication. If no communication is desired, the master enters a power conserving mode during atime period 3233 before activating again to listen to the channel. If the channel is not idle, the master does not send the idle sense message and enters a power saving mode for atime period 3235 before activating again to listen to the channel. - Communication between the master and slave devices is the same as that discussed above in reference to
FIG. 33 a except that, after sending or receiving data during thetime period 3219, the master device enters a power conserving mode during thetime period 3237. -
FIG. 33 c is also a timing diagram of one embodiment of the protocol used according to the present invention which illustrates a scenario wherein the peripheral LAN master device fails to service peripheral LAN slave devices. The master device periodically sends anidle sense message 3205, waits atime period 3231, and enters a power conserving mode during atime period 3233 as discussed above in reference toFIG. 33 b. Similarly, the slave device monitors the idle sense messages duringtime periods time periods time period 3241, the slave unsuccessfully attempts to monitor an idle sense message. The slave then goes to sleep for atime period 3243 and activates to attempt to monitor a next idle sense message during atime period 3245, but is again unsuccessful. - The slave device thereafter initiates a binding protocol to attempt to regain synchronization with the master. While two
time periods time period 3247, which is equal to the time period from one idle sense message to the next, in an attempt to locate a next idle sense message. If the slave is again unsuccessful, it may stay active until it locates an idle sense message from the master, or, if power consumption is a concern, the slave may enter a power conserving mode at the end of thetime period 3247 and activate at a later time to monitor for an idle sense message. - In the event the master device remains outside the range of the slave devices in the peripheral LAN for a period long enough such that communication is hindered, one of the slave devices may take over the functionality of the master device. Such a situation is useful when the slave devices need to communicate with each other in the absence of the master. Preferably, such a backup device has the ability to communicate with devices on the premises LAN. If the original master returns, it listens to the channel to determine idle sense messages from the backup, indicates to the backup that it has returned and then begins idle sense transmissions when it reestablishes dominance over the peripheral LAN.
-
FIG. 34 is a timing diagram illustrating one embodiment of the peripheral LAN master device's servicing of both the high powered premises LAN and the low powered peripheral LAN subnetwork, with a single or plural radio transceivers, in accordance with present invention.Block 3251 represents typical communication activity of the master device.Line 3253 illustrates the master's communication with an access point on the premises LAN whileline 3255 illustrates the master's communication with a slave device on the peripheral LAN.Lines - The access point periodically broadcasts
HELLO messages 3261 indicating that it is available for communication. The master device monitors the HELLO messages during atime period 3263, and, upon determining that the base does not need servicing, enters a power conserving mode during atime period 3265. The master then activates for a time period to monitor the next HELLO message from the base. If the master has data to send to the base, it transmits the data during atime period 3271. Likewise, if the base has data to send to the master, the base transmits the data during atime period 3269. Once the data is received or sent by the master, it may again enter a power conserving mode. While HELLO message protocol is discussed, a number of communication protocols may be used for communication between the base and the master device. As may be appreciated, the peripheral LAN master device acts as a slave to access points in the premises LAN. - Generally, the communication exchange between the master and the slave is similar to that described above in reference to
FIG. 33 b.Block 3273, however, illustrates a situation where the master encounters a communication conflict, i.e., it has data to send to or receive from the slave on the peripheral LAN at the same time it will monitor the premises LAN for HELLO messages from the base. If the master has two radio transceivers, the master can service both networks. If, however, the master only has one radio transceiver, the master chooses to service one network based on network priority considerations. For example, inblock 3273, it may be desirable to service the slave because of the presence of data rather than monitor the premises LAN for HELLO messages from the base. On the other hand, inblock 3275, it may be more desirable to monitor the premises LAN for HELLO messages rather than transmit an idle sense message on the peripheral LAN. -
FIGS. 35 and 36 are block diagrams illustrating additional power saving features according to the present invention, wherein ranging and battery parameters are used to optimally select the appropriate data rate and power level for subsequent transmissions. Specifically, even though network devices such as thecomputer terminal 3007 inFIGS. 28-29 b have the capability of performing high power transmissions, because of battery power concerns, such devices are configured to utilize minimum transmission energy. Adjustments are made based on ranging information and on battery parameters. Similarly, within the peripheral LAN, even though lower power transceivers are used, battery conservation issues also justify the use of such data rate and power adjustments. This process is described in more detail below in reference toFIGS. 35 and 36 . - More specifically,
FIG. 35 ; is a block diagram which illustrates aprotocol 3301 used by a destination peripheral LAN device and acorresponding protocol 3303 used by a source peripheral LAN device to adjust the data rate and possibly the power level for future transmission between the two devices. At ablock 3311, upon receiving a transmission from a source device, the destination device identifies a range value at ablock 3313. In a low cost embodiment, the range value is identified by considering the received signal strength indications (RSSI) of the incoming transmission. Although RSSI circuitry might be placed in all peripheral LAN radios, the added expense may require that only peripheral LAN master devices receive the circuitry. This would mean that only peripheral LAN master devices would perform the function of the destination device. Other ranging techniques or signal quality assessments can also be used, such as measuring jitter in received signals, by adding additional functionality to the radios. Finally, after identifying the range value at theblock 3313, the destination device subsequently transmits the range value to the slave device from which the transmission was received, at ablock 3314. - Upon receipt of the range value from the destination device at a
block 3321, the source peripheral LAN device evaluates its battery parameters to identify a subsequent data rate for transmission at ablock 3323. If range value indicates that the destination peripheral LAN device is very near, the source peripheral LAN device selects a faster data rate. When the range value indicates a distant master, the source device selects a slower rate. In this way, even without adjusting the power level, the total energy dissipated can be controlled to utilize only that necessary to carry out the transmission. However, if constraints are placed on the maximum or minimum data rates, the transmission power may also need to be modified. For example, to further minimize the complexity associated with a fully random range of data rate values, a standard range and set of several data rates may be used. Under such a scenario, a transmission power adjustment might also need to supplement the data rate adjustment. Similarly, any adjustment of power must take into consideration maximum and minimum operable levels. Data rate adjustment may supplement such limitations. Any attempted modification of the power and data rate might take into consideration any available battery parameters such as those that might indicate a normal or current battery capacity, the drain on the battery under normal conditions and during transmission, or the fact that the battery is currently being charged. The latter parameter proves to be very significant in that when the battery is being charged, the peripheral LAN slave device has access to a much greater power source for transmission, which may justify the highest power transmission and possibly the slowest data rate under certain circumstances. - Finally, at a
block 3325, an indication of the identified data rate is transmitted back to the destination device so that future transmissions may take place at the newly selected rate. The indication of data rate may be explicit in that a message is transmitted designating the specific rate. Alternately, the data rate may be transferred implicitly in that the new rate is chose and used by the source, requiring the destination to adapt to the change. This might also be done using a predefined header for synchronization. - In addition, at the
block 3325, in another embodiment, along with the indication of the identified data rate, priority indications are also communicated. Whenever battery power is detected as being low, a radio transmits a higher priority indication, and each receiver thereafter treats the radio as having a higher protocol priority than other such radios that exhibit normal power supply energy. Thus, the remaining battery life is optimized. For example, in a non-polling network, the low power device might be directly polled periodically so to allow scheduled wake-ups and contention free access to a receiver. Similarly, in an alternate embodiment, priority indications not need to be sent. Instead, the low battery power device itself exercises protocol priority. For example, for channel access after detecting that the channel is clear at the end of an ongoing transmission, devices with normal energy levels are required to undergo a pseudo-random back-off before attempting a transmission (to avoid collision). The low power device may either minimize the back-off period or ignore the back-off period completely. Thus, the low power device gains channel access easier than other normal power level devices. Other protocol priority schemes may also be assigned by the receivers to the low power device (via the indication), else may be taken directly by the low power device. -
FIG. 36 illustrates an alternate embodiment for carrying out the data rate and possibly power level adjustment. At ablock 3351 upon binding and possibly periodically, the source peripheral LAN device sends an indication of its current battery parameters to the destination peripheral LAN device. This indication may be each of the parameters or may be an averaged indication of all of the parameters together. At ablock 3355, upon receipt, the destination peripheral LAN device 355 stores the battery parameters (or indication). Finally, at ablock 3358, upon receiving a transmission from the source device, based on range determinations and the stored battery parameters, the destination terminal identifies the subsequent data rate (and possibly power level). Thereafter, the new data rate and power level are communicated to the source device either explicitly or implicitly for future transmissions. -
FIG. 37 illustrates an exemplary block diagram of aradio unit 3501 capable of concurrent participation on multiple LAN's. To transmit, acontrol processor 3503 sends a digital data stream to amodulation encoding circuit 3505. Themodulation encoding circuit 3505 encodes the data stream in preparation for modulation byfrequency translation circuit 3507. The carrier frequency used to translate the data stream is provided by afrequency generator circuit 3509. Thereafter, the modulated data stream is amplified by atransmitter amplifier circuit 3511 and then radiated via the one of a plurality ofantennas 3513 that has been selected via anantenna switching circuit 3515. Together, themodulation encoding circuitry 3505,translator 3507,amplifier 3511 and associated support circuitry constitute the transmitter circuitry. - Similarly, to receive data, the RF signal received by the selected one of the plurality of
antennas 3513 is communicated to a receiverRF processing circuit 3517. After performing a rather coarse frequency selection, the receiverRF processing circuit 3517 amplifies the RF signal received. The amplified received signal undergoes a frequency shift to an IF range via afrequency translation circuit 3519. Thefrequency translation circuit 3519 provides the center frequency for the frequency shift. Thereafter, a receiver signal processing circuit receives the IF signal, performs a more exact channel filtering and demodulation, and forwards the received data to thecontrol processor 3503, ending the process. Together, thereceiver signal processing 3521,translator 3517,receiver RF processing 3517 and associated support circuitry constitute the receiver circuitry. - The
control processor 3503 operates pursuant to a set of software routines stored inmemory 3522 which may also store incoming and outgoing data. Specifically, thememory 3522 contains routines which define a series of protocols for concurrent communication on a plurality of LANs. As part of such operation, thecontrol processor 3503 provides for power savings via a powersource control circuit 3523, i.e., whenever the participating protocols permit, thecontrol processor 3503 causes selective power down of the radio transceiver circuitry via acontrol bus 3525. Also, via thebus 3525, the control processor sets the frequency of thefrequency generator 3509 so as to select the appropriate band and channel of operation required by a correspondingly selected protocol. Similarly, thecontrol processor 3503 selects the appropriate antenna (via the antenna switching circuitry 3515) and channel filtering in preparation for operation on a selected LAN. Responding to the software routines stored in thememory 3522, thecontrol processor 3503 selects the appropriate LANs to establish participation, detaches from those of the selected LANs in which participation is no longer needed, identifies from the selected LANs a current priority LAN in which to actively participate, maintains a time-shared servicing of the participating LANs. Further detail regarding this process follows below. - In one embodiment, the
control processor 3503 constitutes a typical microprocessor on an independent integrated circuit. In another embodiment, thecontrol processor 3503 comprises a combination of distributed processing circuitry which could be included in a single integrated circuit as is a typical microprocessor. Similarly, thememory 3522 could be any type of memory unit(s) or device(s) capable of software storage. - The radio circuitry illustrated is designed with the frequency
nimble frequency generator 3509 so as to be capable of operation on a plurality of LANs/WANs. Because each of the plurality may be allocated a different frequency band, more than one antenna may be desirable (although a single antenna could be used, antenna bandwidth limitations might result in an unacceptable transmission-reception inefficiency). Thus, to select the appropriate configuration, thecontrol processor 3503 first identifies the LAN/WAN on which to participate and selects the corresponding radio configuration parameters from thememory 3521. Thereafter, using the configuration parameters and pursuant to control routines stored in thememory 3522, thecontrol processor 3503 sets the frequency of thegenerator 3509, selects the appropriate antenna via theantenna switching circuit 3515, and configures the receiver RF andsignal processing circuits - More particularly, the
antenna switching circuit 3515 comprises a plurality of digitally controlled switches, each of which is associated with one of the plurality ofantennas 3513 so as to permit selective connection by thecontrol processor 3503 of any available antenna to the transceiver circuitry. -
FIG. 38 illustrates an exemplary functional layout of thefrequency generator 3509 ofFIG. 37 according to one embodiment of the present invention. Basically, thefrequency generator 3509 responds to thecontrol processor 3503 by producing the translation frequency necessary for a selected LAN/WAN. The illustrated frequency generator comprises a voltage controlled oscillator (VCO) 3601. As is commonly known, for a VCO, the center frequency FVCO tracks the input voltage. However, because typical VCO's are subject to drift, the VCO is stabilized by connecting it in a phase locked loop to a narrowband reference, such as acrystal reference oscillator 3603. Theoscillator 3603 outputs a signal of a fixed or reference frequency FREF to a divide-by-R circuit 3605, which divides as its name implies the reference frequency FREF by the known number R.A phase detector 3609 receives the divided-by-R output of thecircuit 3609 and the feedback from the output of theVCO 3601 via a divide-by-N circuit 3607. Upon receipt, thephase detector 3609 compares the phase of the outputs from thecircuits lowpass loop filter 3611. The output of thefilter 3611 is applied to the input of theVCO 3601 causing the center frequency of theVCO 3601 to lock-in. Therefore, if the output of theVCO 3601 begins to drift out of phase of the reference frequency, thephase detector 3609 responds with a corrective output so as to adjust the center frequency of theVCO 3601 back in phase. - With the illustrated configuration, the center frequency of the
VCO 3601 is a function of the reference frequency as follows: -
F VCO=(F REF *N)/R - Thus, to vary the center frequency of the
VCO 3601 to correspond to a band of a selected LAN/WAN in which active participation is desired, the control processor 3503 (FIG. 37 ) need only vary the variables “R” and “N” and perhaps the frequency of the reference oscillator. Because the output FREF of thereference oscillator 3603 is quite stable, the phase lock loop as shown also keeps the output frequency FVCO of theVCO 3601 stable. - More specifically, although any other scheme might be implemented, the value R in the divide-by-
R circuit 3605 is chosen so as to generate an output equal to the channel spacing of a desired LAN/WAN, while the value N is selected as a multiplying factor for stepping up the center frequency of theVCO 3601 to the actual frequency of a given channel. Moreover, the frequency of the reference oscillator is chosen so as to be divisible by values of R to yield the channel spacing frequencies of all potential LANs and WANs. For example, to participate on both MTEL Corporation's Two Way Paging WAN (operating at 900 MHz with 25 KHz and 50 KHz channel spacings) and ARDIS Corporation's 800 MHz specialized mobile radio (SMR) WAN (operating at 25 KHz channel spacings centered at multiples of 12.5 KHz), a single reference frequency may be chosen to be a whole multiple of 12.5 KHz. Alternately, multiple reference frequencies may be chosen. Moreover, the value N is chosen to effectively multiply the output of the divide-by-R circuit 3605 to the base frequency of a given channel in the selected WAN. - For frequency hopping protocols, the value of R is chosen so as to yield the spacing between frequency hops. Thus, as N is incremented, each hopping frequency can be selected. Randomizing the sequence of such values of N provides a hopping sequence for use by an access point as described above. Pluralities of hopping sequences (values of N) may be stored in the memory 3522 (
FIG. 37 ) for operation on the premises LAN, for example. - In addition to the single port phase locked loop configuration for the
frequency generator 3509, other configurations might also be implemented. Exemplary circuitry for such configurations can be found in U.S. patent application Ser. No. 08/205,639 (Attorney Docket Nos. DN37139XXA; 10458US03), filed Mar. 4, 1994 by Mahany et al., entitled “Method of and Apparatus For Controlling Modulation of Digital Signals in Frequency-Modulated Transmissions”. This application is incorporated herein in its entirety. -
FIG. 39 illustrates further detail of the receiverRF processing circuit 3517 ofFIG. 37 according to one embodiment of the present invention. Specifically, apreselector 3651 receives an incoming RF data signal from a selected one of the plurality of antennas 3513 (FIG. 37 ) via aninput line 3653. Thepreselector 3651 provides a bank ofpassive filters 3657, such as ceramic or dielectric resonator filters, each of which provides a coarse filtering for one of the LAN/WAN frequencies to which it is tuned. One of the outputs from the bank ofpassive filters 3657 is selected by thecontrol processor 3503 via aswitching circuit 3655 so as to monitor the desired one of the available LANs/WANs. Thereafter, the selected LAN/WAN RF signal is amplified by anRF amplifier 3659 before translation by the frequency translation circuit 3519 (FIG. 37 ). -
FIG. 40 illustrates further detail of the receiversignal processing circuit 3521 ofFIG. 37 according to one embodiment of the present invention. In particular, digitally controlled switchingcircuits control processor 3503 by selecting an appropriate pathway for the translated IF data signal through one of a bank of IF filters 3705. Each IF filter is an analog crystal filter, although other types of filters such as a saw filter might be used. The IF filters 3705 provide rather precise tuning to select the specific channel of a given LAN/WAN. - After passing through the
switching circuit 3703, the filtered IF data signal is then amplified by anIF amplifier 3707. The amplified IF signal is then communicated to ademodulator 3709 for demodulation. The control processor retrieves the incoming demodulated data signal for processing and potential storage in the memory 3522 (FIG. 37 ). -
FIG. 41 illustrates further detail of the receiversignal processing circuit 3521 ofFIG. 37 according to another embodiment of the present invention. Specifically, the IF signal resulting from the translation by thefrequency translator circuitry 3519, enters the receiver signal processing circuit via aninput 3751. Thereafter, the IF signal passes through ananti-aliasing filter 3753, and is amplified by alinear amplifier 3755. An IF oscillator 3757 supplies a reference signal fREF for translation of the incoming IF signal atfrequency translation circuits phase shift circuit 3763 provides for a 90-degree shift of fREF, i.e., if fREF is considered a SINE wave, then the output of thecircuit 3763 is the COSINE of fREF. Both the SINE and COSINE frequency translation pathways provide for channel selection of the incoming data signal. Thereafter the data signals are passed through correspondinglow pass filters converters digital signal processor 3773 which provides for further filtering and demodulation. Thedigital signal processor 3773 thereafter forwards the incoming data signal to the control processor 3503 (FIG. 37 ) via anoutput line 3775. Moreover, although thedigital signal processor 3773 and thecontrol processor 3507 are discrete components in the illustrated example, they may also be combined into a single integrated circuit. -
FIG. 42 illustrates further detail of some of the storage requirements of thememory 3522 ofFIG. 37 according to one embodiment of the present invention. To control the radio, the control processor 3503 (FIG. 37 ) accesses the information in thememory 3522 needed for radio setup and operation on a plurality of LANs/WANs. Among other information, thememory 3522 stores: 1) a plurality of software protocols, one for each LAN/WAN to be supported, which define how the radio is to participate on the corresponding LAN; and 2) an overriding control set of routines which govern the selection, use and interaction of the plurality of protocols for participation on desired LANs/WANs. - Specifically, in the
memory unit 3522, among other information and routines, software routines relating to the media access control (MAC) sublayer of the communication protocol layers can be found. In general, a MAC sublayer provides detail regarding how communication generally flows through a corresponding LAN or WAN. Specifically, the MAC sublayer handles functions such as media access control, acknowledge, error detection and retransmission. The MAC layer is fairly independent of the specific radio circuitry and channel characteristics of the LAN or WAN. - As illustrated, premises LAN, peripheral LAN, vehicular LAN and
WAN MAC routines FIG. 37 ) should operate while actively participating on each LAN or WAN. Although only the several sets of MAC routines are shown, many other sets might also be stored or down-loaded into thememory 3522. Moreover, the sets of MAC routines 3811-17 might also share a set ofcommon routines 3819. In fact, the sets of MAC routines 3811-17 might be considered a subset of an overall MAC which shares thecommon MAC routines 3819. - Below the MAC layer in the communication hierarchy, hardware and channel related software routines and parameters are necessary for radio control. For example, such routines govern the specific switching for channel filtering and antenna selection required by a given LAN or WAN. Similarly, these routines govern the
control processor 3503's selection of parameters such as for R and N for the frequency generator 3509 (FIG. 38 ), or the selective power-down (via the powersource control circuitry 3503—FIG. 37 ) of portions or all of the radio circuitry whenever possible to conserve battery power. As illustrated, such routines and parameters are referred to as physical (PHY)layer control software 3821. Each of the sets of MAC routines 3811-17 and 3819 provide specific interaction with the PHYlayer control software 3821. - A set of MAC select/
service routines 3823 govern the management of the overall operation of the radio in the network. For example, if participation on the premises LAN is desired, the MAC select/service routines 3823 direct the control processor 3503 (FIG. 37 ) to the common andpremises MAC routines service routines 3823 direct thecontrol processor 3503 to enter a sleep mode (if available). Thecontrol processor 3503 refers to the premisesLAN MAC routines 3811, and follows the protocol necessary to establish sleep mode on the premises LAN. Thereafter, the select/service routines 3823 directs thecontrol processor 3503 to the peripheralLAN MAC routines 3813 to establish and begin servicing the peripheral LAN. Whenever the peripheral LAN is no longer needed, the select/service routines 3823 direct a detachment from the peripheral LAN (if required) as specified in the peripheralLAN MAC routines 3813. Similarly, if, during the servicing of the peripheral LAN, an overriding need to service the premises LAN arises, theprocessor 3503 is directed to enter a sleep mode via the peripheralLAN MAC routines 3813, and to return to servicing the premises LAN. - Although not shown, additional protocol layers as well as incoming and outgoing data are also stored with the
memory 3522, which, as previously articulated, may be a distributed plurality of storage devices. -
FIG. 43 illustrates a software flow chart describing the operation of the control processor 3503 (FIG. 37 ) in controlling the radio unit to participate on multiple LANs according to one embodiment of the present invention. Specifically, at ablock 3901, the control processor first determines whether the radio unit needs to participate on an additional LAN (or WAN). If such additional participation is needed, at ablock 3903, the radio unit may register sleep mode operation with other participating LANs if the protocols of those LANs so require and the radio unit has not already done so. Next, at ablock 3905, the control processor causes the radio unit to poll or scan to locate the desired additional LAN. If the additional LAN is located at ablock 3907, participation of the radio unit on the additional LAN is established at ablock 3909. - If additional participation is not needed at
block 3901, or if the additional LAN has not been located atblock 3907, or once participation of the radio unit on the additional LAN has been established atblock 3909, the control processor next determines at ablock 3911 whether any of the participating LANs require servicing. If any given participating LAN requires servicing, at ablock 3913, the radio unit may be required by the protocol of the given LAN to reestablish an active participation status on that LAN, i.e., indicate to the given LAN that the radio unit has ended the sleep mode. Next, at ablock 3915, the radio unit services the given LAN as needed or until the servicing of another LAN takes priority over that of the given LAN. At ablock 3917, the radio unit may then be required to register sleep mode operation with the given LAN if the LAN's protocol so requires. - At that point, or if no participating LAN needs servicing at
block 3911, the control processor determines at ablock 3919 whether the radio needs to detach from any given participating LAN. If so, the radio unit may implicitly detach at ablock 3923 if the protocol of the LAN from which the radio wishes to detach requires no action by the radio unit. However, at ablock 3921, the radio unit may be required to establish active participation on the LAN in order to explicitly detach atblock 3923. For example, such a situation may arise when a portable terminal desires to operate on a shorter range vehicular LAN and detaches from a premises LAN. The portable terminal may be required by the protocol of the premises LAN to establish active communication on the premises LAN to permit the radio unit to inform the premises LAN that it is detaching and can only be accessed through the vehicular LAN. - Once the radio unit is detached at
block 3923, or if the radio unit does not need to detach from any participating LANs atblock 3919, the control processor returns to block 3901 to again determine whether the radio unit needs to participate on an additional LAN, and repeats the process. -
FIG. 44 is an alternate embodiment of the software flow chart wherein the control processor participates on a master LAN and, when needed, on a slave LAN. Specifically, at ablock 3951, the control processor causes the radio unit to poll or scan in order to locate the master LAN. If the master LAN has not been located at ablock 3953, polling or scanning for the master LAN continues. Once the master LAN is located, participation with the master is established at ablock 3955. At ablock 3957, the radio unit participates with the master LAN until the need for the radio unit to participate on the slave LAN takes precedence. When that condition occurs, the control processor determines at ablock 3959 whether participation of the radio unit on the slave network is established. If not, such participation is established at ablock 3961. Next, at ablock 3963, the radio unit services the slave LAN as needed or until the servicing of the master LAN takes priority. If the control processor determines at ablock 3965 that servicing of the slave LAN has been completed, the radio unit detaches from the slave LAN at ablock 3967 and returns to block 3957 to continue participation on the master LAN. - However, if the control processor determines at
block 3965 that servicing has not been, or may not be, completed, the radio unit does not detach from the slave LAN. In that case, before returning to block 3957 to service the master LAN, the radio unit may be required by the protocol of the slave LAN to register sleep mode operation with the slave LAN at ablock 3969. - In another embodiment, shown in
FIG. 45 , the overall communication system of the present invention has been adapted to service the environment found, for example, in a retail store. As illustrated, the premises of the retail store are configured with a communication network to provide for inventory control. Specifically, the communication network includes abackbone LAN 4501, aninventory computer 4511, and a plurality of cash registers located throughout the store, such ascash registers backbone LAN 4501 is a single wired link, such as Ethernet. However, it may comprise multiple sections of wired links with or without wireless link interconnects. For example, in another embodiment, eachcash register - The
inventory computer 4511, which can range from a personal to main frame computer, provides central control over the retail inventory by monitoring the inventory status. Thus, theinventory computer 4511 must monitor both sales and delivery information regarding inventoried goods. To monitor sales information, thecash registers tethered code scanners scanners cash registers inventory computer 4511 via thebackbone LAN 4501. To monitor delivery information, when thetruck 4513 makes a delivery, the information regarding the goods delivered is communicated to theinventory computer 4511 via theaccess point 4517. As illustrated, theaccess point 4517 acts as a direct access point to thebackbone LAN 4501, even though a series of wireless hops might actually be required. - Upon receiving the sales information from the
cash registers inventory computer 4511 automatically debits the inventory count of the goods sold. Similarly, upon receiving the delivery information, theinventory computer 4511 automatically credits the inventory count of the goods delivered. With both the sales and delivery information, theinventory computer 4511 accurately monitors the inventory of all goods stocked by the retail store. From the inventory information, theinventory computer 4511 generates purchase orders for subsequent delivery, automating the entire process. - In particular, the
inventory computer 4511 receives sales information from thecash registers inventory computer 4511 checks the retail inventory for each item sold to determine if restocking is needed. If restocking proves necessary, theinventory computer 4511, evaluating recent sales history, determines the quantity of the goods needed. From this information, an “inventory request” is automatically generated by theinventory computer 4511. Once verified (as modified if needed), the inventory request is automatically forwarded by theinventory computer 4511 to thewarehouse 4519. This forwarding occurs via either a telephone link using amodem 4521, or a WAN link using thebackbone LAN 4501,access point 4517, and anantenna tower 4523. - At the
remote warehouse 4519, thedelivery truck 4513 is loaded pursuant to the inventory request received from theinventory computer 4511. After loading, thetruck 4513 travels to the premises of the retail store. When within range of theaccess point 4517, theradio terminal 4515 in thetruck 4513 automatically gains access to the retail premises LAN via the access point 4517 (as detailed above), and communicates an anticipated delivery list (a “preliminary invoice”), responsive to the inventory request, to theinventory computer 4511. In response, dock workers can be notified to prepare for the arrival of thedelivery truck 4513. In addition, any rerouting information can be communicated to the terminal 4515 in thedelivery truck 4513. If a complete rerouting is indicated, thetruck 4513 may be redirected without ever having reached the dock. - While unloading the
delivery truck 4513, codes are read from all goods as they are unloaded using portable code readers, which may be built into or otherwise communicatively attached to theradio terminal 4515. The codes read are compared with and debited against the preliminary invoice as the goods are unloaded. This comparing and debiting occur either solely within the terminal 4515 or jointly within theterminal 4515 and theinventory computer 4511. If the codes read do not correspond to goods on the inventory request, or if the codes read do correspond but are in excess of what was required by the inventory request, the goods are rejected. Rejection, therefore, occurs prior to the actual unloading of the goods from thedelivery truck 4513. - At the dock, the goods received from the
delivery truck 4513 undergo a confirmation process by a dock worker who, using aradio terminal 4525 configured with a code reader, reads the codes from the goods on the dock to guarantee that the proper goods, i.e., those requested pursuant to the inventory request, were actually unloaded. This extra step of confirmation can be eliminated, however, where the dock worker directly participates in the code reading during the unloading process in thedelivery truck 4513. Similarly, the code reading within thedelivery truck 4513 could be eliminated in favor of the above described on-dock confirmation process, but, reloading of any wrongly unloaded goods would be required. - Upon confirmation of the delivery by the dock worker, a verified invoice is automatically generated by the
radio terminal 4515 and routed to theinventory computer 4511 for inventory and billing purposes. In addition, the verified invoice is routed to thewarehouse 4519. Such routing may occur as soon as the delivery truck returns to thewarehouse 4519. However, to accommodate rerouting in situations where goods have been turned away at the retail store, theradio terminal 4515 communicates the final invoice immediately to thewarehouse 4519. Thewarehouse 4519, upon receiving the final invoice, checks the final invoice with the list of goods loaded in thedelivery truck 4513, and determines whether delivery of the remaining goods is possible. If so, thewarehouse 4519 reroutes thetruck 4513 to the next delivery site. - The communication of the final invoice and the rerouting information between the
warehouse 4519 and the terminal 4515 may utilize a low cost communication pathway through the telephone link in the premises network of the retail store. In particular, the pathway for such communication utilizes theaccess point 4517,backbone LAN 4501,inventory computer 4511 andmodem 4521. Alternately, the communication pathway might also utilize the WAN directly from theradio terminal 4515 to thewarehouse 4519 via theantenna tower 4523. Moreover, theantenna tower 4523 is merely representative of a backbone network for the WAN. Depending on the specific WAN used, thetower 4523 may actually comprise a plurality of towers using microwave links to span the distance between the retail premises and thewarehouse 4519. Similarly, satellite relaying of the communications might also be used. -
FIGS. 46 a-b illustrate a further embodiment of the communication system of the present invention which illustrate the use of access servers that support local processing and provide both data and program migration. Specifically, as with the previous figures,FIG. 46 a illustrates a wireless and hardwired communication network which uses a spanning tree protocol to provide ubiquitous coverage throughout a premises. - For example, if any network device, e.g., an end-point device such as a wireless, hand-held
computer terminal 4601, desires to communicate with another network device, e.g., ahardwired computer 4603, a routing request is constructed which specifically identifies the destination device. After construction, the routing request is transmitted through a spanning tree pathway to the destination device. - In particular, the terminal 4601 formulates a routing request identifying the
computer 4603. The routing request may also contain, for example, a message or data to be delivered or a request for data or program code. The terminal 4601 transmits the routing request downstream (toward the root of the spanning tree) to anaccess device 4605. Theaccess device 4605 examines its spanning tree routing table entries, attempting to locate an upstream path to the destination device identified by the request. Because no entry exists, theaccess device 4605 transmits the routing request downstream to anaccess device 4607. After finding no routing table entry, theaccess device 4607 routes the request to aroot access device 4609. Finding no routing table entry for thecomputer 4603, theaccess device 4609 transmits the routing request onto a wiredLAN 4610. Using its routing table which has an entry for thecomputer 4603, aroot access device 4611 fields the routing request and transmits the request upstream to anaccess device 4613. Likewise, theaccess device 4613, having an entry, sends the routing request to anaccess device 4617. Upon receipt, theaccess device 4617 forwards the routing request to thecomputer 4603. - When a network device, an end-point device for example, has a need for remotely stored program code (i.e., program objects) or data (i.e., data objects) such as a schematic diagram, delivery address or repair manual, the end-point device formulates a code or data request and sends it in a downstream spanning tree pathway. Unlike a routing request, data and code requests do not have a specific destination designated. Instead, data/code requests (data requests and/or code request) only identify the specific data or code needed. This is because the requesting device need not know the destination of the data or code needed, promoting dynamic, spanning tree migration—as will become apparent below.
- In addition, where possible, program code will be reduced to an interpretive form. Common libraries of program objects (in an object code form, i.e., executable form) are stored at each network terminal, computer or access server. Upon any request for an application program, for example, first, the sequence of calls to each program object is delivered along with a list of all program objects that are needed to fully execute the application program. Thereafter, if the specific underlying code for any of the delivered objects is not found locally, a renewed request for the executable code for those program objects is made. Upon delivery, the application program may be executed. Moreover, the movement of the program application and other specific program objects are tracked and migrated as described above in relation to generic data.
- For example, the terminal 4667 typically operates using an application program directed to an exemplary installation and service industry. A driver of a
vehicle 4666 enters the premises via a dock. Upon establishing a link with the network, the terminal 4667 reports its status. In response, the terminal 4667 receives a command to load a docking application from thecomputer 4652 via the premises network. After determining that it does not have the docking application stored locally, the terminal 4667 transmits a program code request specifying the application. Because of previous activity, for example, the access device 4659 (which receives the transmission) happens to have the program code stored locally. It fields the request, sending the list of program objects along with the “interpretive” program object sequence. Upon receipt, the terminal 4667 might identify that all program object executable code is stored locally, and, therefore, begins to execute the application program. Otherwise, if certain program object executable is not locally stored, the terminal 4667 transmits a subsequent request. This time, theaccess device 4659 might not currently store the executable program object code. Thus, theaccess server 4659 routes the request downstream toward a device which does store the code. Once located, the code is delivered upstream to the terminal 4667 for execution. - Requested data or program code may reside in one or more of those of the
access devices computers - For example, assuming that the
access device 4619 has been configured as an access server and happens to store data needed by the terminal 4601, the terminal 4601 would begin the process of retrieving the data by formulating a data request. As previously mentioned, the data request does not identify theaccess device 4619, but only identifies the needed data. After formulation, the terminal 4601 routes the request downstream to theaccess device 4605. Upon receipt, theaccess device 4605 determines that it does not store the requested data, and fails to identify the requested data in a routing table entry. Thus, theaccess device 4605 forwards the data request to theaccess device 4607. As withdevice 4605, theaccess device 4607 cannot identify the requested data and routes the request to theaccess device 4609. Upon receipt, theaccess device 4609 consults its routing table and identifies an entry for the requested data. The entry lists the next device in an upstream path to the data, i.e., theaccess device 4619 is listed. Thus, theaccess device 4609 forwards the data request upstream to theaccess device 4619. Theaccess device 4619 responds to the data request by: 1) locating the stored data; 2) formulating a routing request (containing the data) destined for the requesting device, the terminal 4601; and 3) sending the routing request downstream to theaccess device 4609. Using its routing table, theaccess device 4609 identifies the terminal 4601, and sends the routing request (with attached data) upstream to theaccess device 4607. Likewise, theaccess device 4607 sends the routing request upstream to theaccess device 4605. Finally, theaccess device 4607 sends the routing request to the destination, the terminal 4601, completing the process. Program code (e.g., program objects) may be similarly stored, requested and delivered. - Similarly, when remote processing is required, a network device formulates a processing request which identifies the specific remote processing needed, yet need not identify a processing destination. After formulation, the processing request is transmitted downstream toward an access server or computer server capable of performing the requested processing. For example, the
access device 4617 fields processing requests from thecomputer 4603. After determining that it cannot perform the processing, theaccess device 4617 consults its spanning tree routing table, yet finds no upstream entry for any network device capable of performing the processing. Thus, theaccess device 4617 routes the processing request downstream to theaccess server 4613. Although theaccess device 4613 has not been configured for such processing, theaccess device 4613 does find an entry identifying a first network device, theaccess device 4615, in an upstream pathway to a location where such processing is handled. Theaccess device 4613 forwards the processing request to theaccess device 4615 which is configured as an access server to handle the processing. Thereafter, the requested processing is carried out by theaccess device 4615, with any associated intercommunication with thecomputer 4603 needed via the same pathway using routing requests. - Thus, each spanning tree routing table not only includes entries for all upstream network devices, each also includes entries for all upstream data, program code and processing resources. Moreover, each such entry only identifies the next network device through which forwarded requests are to made in the pathway to the request destination. Each spanning tree table also contains an entry designating a downstream route for use when no upstream entry can be located.
- In the communication network of the present invention, program code, data and local processing capabilities dynamically migrate through the network to optimize network performance. Specifically, each of the
access devices computer 4623, configured as a server. - Upon encountering a first data request by the terminal 4601 for the data object in high demand, each of the intermediate access servers, the
access devices computer 4623. However, each of the intermediate access servers record entries for the data in their routing tables with a downstream destination. Thereafter, each time that a network device, such as the terminal 4601, requests the data object, the intermediate access servers which receive the request bump up a count stored in the routing table entry. - To make a determination of whether to migrate the data object or not, upon encountering a data request, each intermediate access server considers: 1) the associated count entry; 2) the duration of time over which the count entry has accumulated; 3) the cost of retrieving the data from the downstream source; 4) the size of the data object; and 5) its own resource availability (e.g., remaining storage space).
- For example, after receiving a high number of recent requests for the data object and having a relatively high cost in extracting the downstream object, the
access device 4605 determines that migration of a copy of the data object into its own available storage could improve network performance. Thus, instead of sending the data request downstream to theaccess device 4607, theaccess device 4605 substitutes and forwards a migration request instead of the data request. - Upon receiving the migration request, the remaining intermediate access servers, the
access devices computer 4623. In response, thecomputer 4623 records the migration event, i.e., the data object migrated and the migration destination (the access device 4605), for future updating control. - The
computer 4623 also forwards a copy of the data object to theaccess device 4609 for relaying to theaccess device 4605 via theaccess device 4607. Upon receipt, theaccess device 4605 stores the data object locally, and forwards a further copy back to the requesting network device, theterminal 4601. Thereafter, instead of relaying each data request for that data object downstream, theaccess device 4605 responds by sending a copy of the locally stored data object toward the requesting device. In other words, theaccess device 4605 has effectively intercepted a copy of the data for local storage, and, thereafter, forwards a copy of the locally stored copy to service any incoming requests. - In addition, upon forwarding the data object from the source, the
computer 4623, to the destination, the terminal 4601, the data object size and link cost associated with reaching a given intermediate access device is recorded. For example, if a wired communication link between thecomputer 4623 and theaccess device 4609 is assigned a cost of “1”, after fielding the data request, thecomputer 4623 constructs a data response which not only includes the requested data object, but also includes a link cost entry of “1” and an indication of the data object size. In turn, theaccess device 4609 identifies the cost to theaccess device 4607, for example a cost of “3”, the access device adds the “3” to the pending cost entry in the data response, and forwards the response to theaccess device 4607. Similarly, theaccess device 4607 assesses a cost of “3” for the communication link to theaccess device 4605, adds the “3” to the pending cost entry of “4”, and forwards the data response to theaccess device 4605. After assessing a cost for the link to the terminal 4601, for example a cost of “4”, the data response is delivered to theterminal 4601. Thus, the terminal 4601 sees that to access the data again, it will most likely result in “11” units of communication cost. Moreover, for example, the terminal 4607 considers the cost of “3” when determining whether to migrate the data object or not. - Similarly, when a migration of a data object occurs, all intermediate access devices record the cost of the upstream link to the copy of the data object. Thereafter, upon receiving a data request for the data object, an intermediate access device can compare the cost of the upstream pathway to the copy with the downstream pathway to the original data object to choose the pathway with the lesser cost. A notification of deletion of a copy of a data object destined for a downstream source is also noted by each intermediate access devices, requiring deletions of the entries for the “copied then deleted” data object.
- For example, if a locally stored copy of the data fails to be used for a period of time determined by the
access device 4605 to be too long to justify local storage (in view of the communication link costs back to the original source, the size of the data object, and potentially dwindling local resources), theaccess device 4605 deletes the locally stored copy of the data, and routes to thecomputer 4623 an indication that the local copy of the data object has been deleted. Upon receiving the indication for relaying, theintermediate access devices computer 4623 records the deletion, completing the purging process. - Although data objects were used above to describe the migration process, program code (or program objects) are similarly migrated to and deleted from local storage. In addition, to prevent instability, a certain amount of hysteresis must be built in to prevent vacillating migration and purging decisions.
- In assigning cost units to the various communication links, comparisons between factors such as actual monetary costs, bandwidths, delays, loading and power consumption are taken into consideration. Moreover, such costs are stored as sub-entries in the spanning tree routing tables.
- Although only migration of a copy from a source to a single destination was previously described, if a data or program object proves to be in high enough demand, several, or even all, access devices in the network might store a copy. All that is required is that each access device experience a significant and sustained quantity of requests for a common data object (or program code/object) to justify the storage of a local copy in view of communication link costs and available local resources.
- Processing resources are similarly migrated and purged. To service a processing request, an access device must be configured not only with sufficient hardware resources but must also store the programming code and associated data necessary to perform the requested processing.
- For example, if the terminal 4601 desires to search prior sales information but can store neither the information nor the necessary search program routines because of limited local resources, the terminal 4601 formulates a processing request which it routes downstream to the
access device 4605. In the illustrated embodiment, theaccess device 4609 is originally configured with the hardware and software necessary to perform the processing request. In particular, theaccess device 4609 uses bulk storage devices to store past sales data, and executes a search program in response to received processing requests. - Although the
intermediate access server 4607 is configured with appropriate processing and storage resources, originally, it does not store the search program or the past sales data. Thus, while receiving repeated processing requests from the terminal 4601 via theintermediate access device 4605, theaccess device 4607 initially logs the request in its routing table and forwards the request downstream to theaccess device 4609 which fields, processes and responds to the requests. - Because the frequency of the requests, costs and available local resources, when not busy, the
access device 4607 sends a migration inquiry downstream to theaccess device 4609. Upon receipt, theaccess device 4609 responds by sending an indication of the volume of the potential transfer upstream, to theaccess device 4607. Based on the indication along with the aforementioned other migration factors, theaccess device 4607 may or may not pursue the migration. - If migration is chosen, the
access device 4607 assembles a migration request identifying the desired processing, and routes the request downstream to theaccess device 4609. In response, theaccess device 4609, records the migration (for future updating) and begins to transfer a copy of the program (or programming object(s)) and the past sales information to theaccess device 4607, preferably occurs during periods of low network traffic. - Although intermediate access devices between the source and destination of the processing migration are not shown in the exemplary illustration above, any intermediate access devices that do occur follow the same procedures previously set forth in reference to data object migration, recording and purging routing table entries to upstream and downstream processing devices.
- As may be appreciated in view of the foregoing, in many instances, migration does not always flow immediately to the access device nearest a requesting network device. Instead, for example, an access device which receives the same data or program code requests from a plurality of different terminals will perform migration before any upstream access device unless upstream link costs are comparatively much higher.
-
FIG. 46 b is a diagram which further illustrates the migration and purging process. In particular, a premises network consists ofcomputers LAN 4653, andaccess devices portable computer terminal 4664 participates in the premises network which exhibits migration and purging as described above in reference toFIG. 46 a. In addition, a vehicular network is shown which consists of amobile access server 4665 and aportable computer terminal 4667. - As illustrated, each of the
access devices access server 4665 via a second higher power radio and associated antenna, e.g., WAN, paging, cellular, etc. The corresponding first radio and associated antenna are used for relatively lower power premises network communication. - Because of the much higher cost associated with the communication link between the
access server 4665 and theaccess device 4659, theaccess servers 4665 is much more likely to engage in the dynamic migration of data/code objects or processing resources than the other access servers located within the premises network. With a link cost assessed at “20” for example, themobile access server 4665 rapidly decides to migrate, while slowly deciding to purge migrated data. The migration/purging process used is the same as that described above in reference to the premises network ofFIG. 46 a. - In addition, because of the high link cost, the
mobile access server 4665 is also configured to provide anticipatory migration, and responds to direct migration commands from the terminal 4667 or other controlling network devices. Specifically, anticipatory migration may occur in two ways. First, if a driver is preparing to leave the premises to service a specific appliance, for example, the schematic diagram of the appliance may be migrated to themobile access server 4665 in anticipation of future use. This form of anticipatory migration may be directed from a controlling device downstream in the premises network, e.g., thecomputer 4652 which also stores the schematic diagram, from the terminal 4667 upstream, or from theaccess server 4665 itself upon analysis of the work order. - A second form of anticipatory migration originates at the access server 4665 (although the resulting migration control could originate either up or downstream). The
access server 4665 anticipates future migration needs through the storage and analysis of previous requests for data/code objects or processing resources. For example, if theaccess server 4665 determines that nearly every time the terminal 4667 requests a given program code or program object, the terminal 4667 follows that request a short time thereafter with further requests for specific data objects. In such circumstances, instead of repeatedly initiating, requesting and delivering portions of data over the communication the higher cost link, the requested and anticipated requests are all handled in one communication session, saving money and time. - Similarly, the terminal 4667, through program design or through request monitoring, can also participate in anticipatory migration. For example, the terminal 4667 can be programmed to make all upcoming requests at one time, and often in advance of leaving the low power radio range of the premises network. The terminal 4667 can also be specifically programmed to issue direct migration and purging commands to the
access server 4665, permitting further control of the migration process and system resources of themobile access server 4665. Moreover, the terminal 4667 may be configured to historically monitor all requests so as to anticipate subsequent requests in the manner described above in reference to theaccess server 4665. - In addition, the
terminals terminals terminals - Each type of data handled by the
terminals access device 4655. Moreover, if the network conditions are favorable, dedicated bandwidth need not be provided at all (see, e.g., discussion regardingFIG. 55 below). - Cellular radios may be built into the
terminals 4664 and 4667 (via PCMCIA slots, for example) or via tethered cellular phones. Similarly, an access device can be configured with a cellular radio to provided cellular service to mobile terminal devices via either dedicated or time-shared wireless bandwidth through the spanning tree, for example. - If postprocessed signature images require at most a delayed delivery of a plurality of such images over inexpensive and possibly slower or less convenient communication links. Alternately, such images may be delivered as a background task when network communication or channel traffic is low. Further, relatively small packages of one way communication to the terminal 4667 may travel through a lower cost paging network for delivery. They may also travel through the spanning tree network, cellular networks, or through other higher cost, two way WANs.
- Because programs cannot always anticipate all of the available communication channels through which the different types of data may flow (availability which not only changes from one network installation to another, but also changes within a given installation due to terminal and device configurations and their locations within the network), the routing tables within each network device subdivide routing information based on the type of data to be forwarded.
- For example, in an oversimplification of the process described in more detail below in reference to
FIG. 55 a, theaccess device 4665 receives a communication from theterminal 4667. The communication takes the form of a requested link for voice signal data destined for thecomputer 4651. In response, theaccess device 4665 consults its routing table, determines that voice data can take one of two pathways: through either a cellular radio or WAN route to theaccess device 4655. In response, theaccess device 4665 delivers the communication route options to the terminal 4667 for user and/or software consideration. - If the request is not aborted and the cellular route is selected, the
access device 4665 establishes a cellular link with theaccess device 4655, and requests a voice session with thecomputer 4651. In response, theaccess point 4655 consults its routing table, and, for voice data to thecomputer 4651, it identifies the need to use the wiredLAN 4653 to communicate with thecomputer 4651. In addition, theaccess point 4655 also determines whether dedicated bandwidth is needed (based on timing considerations), or whether packet based time-shared voice data delivery is sufficient. - Either way, the
access device 4655 responds by placing the request on the wiredLAN 4653. In response, thecomputer 4651 communicates an acknowledge message which is routed through theaccess device 4655 to theaccess device 4665. Theaccess device 4665 delivers the acknowledge message to theterminal 4667. At that point, the terminal 4667 begins sending the voice data to thecomputer 4651 through the designated route. - If the cellular link to the
access device 4655 is in use or the end-to-end link otherwise proves unavailable, theaccess device 4665 reports the status, again offering the remaining communication route via the WAN. If selected, theaccess device 4665 establishes the pathway to theaccess device 4659 via WAN communications. In turn, the pathway is established through theaccess device 4657,access device 4655 and thecomputer 4653. With a returned acknowledge from thecomputer 4653, the terminal 4667 begins voice communication. - Similarly, a communication pathway between any other two network devices, such as from the
computer 4651 to the terminal 4664, can be established. For example, if thecomputer 4651 desires the user of the terminal 4664 to obtain and compare a penned signature image for comparison with an authenticated signature stored at thecomputer 4651, thecomputer 4651 first attempts to communicate the request and image data to the terminal 4664 via the premises network. If the terminal 4664 happens to be out of range of the premises network, thecomputer 4651 attempts to page the terminal 4664 with the comparison request. In response, the terminal 4664 considers the data type via its routing table, identifies the route(s) available, and offers the route options to the user and/or program at theterminal 4664. If selected, the terminal 4664 establishes the selected communication link for the delivery of the associated comparison image. - Moreover, because of the high cost associated with the communication link from the
access device 4665 to the premises network, theaccess device 4665 stores several types of lower priority data until such time or data storage size justifies delivery. Such deliver may not occur until the vehicle returns to the premises network, e.g., to a dock at the premises. - In addition, requests for communication may also include specific limitations. For example, the need for voice data only in real time full-duplex (i.e., two-way) mode can be specified, and will result in no consideration by any intermediate network device of other half-duplex or pseudo real time link options. Lowest cost delayed delivery can alternatively be specified if delivery speed is not an issue. Requests specifying high priority result in the selection of the fastest communication link regardless of cost.
- Moreover, the
terminals - Communication between the terminal 4667 and the
access device 4665 occurs via an infrared link if the terminal 4667 is docked within the vehicle. Routing tables within theaccess device 4665 and terminal 4667 both contain dual entries for communication exchange pathways. First, the infrared link is attempted, if available. Otherwise, a lower power RF communication transmission is used. Although a wired docking arrangement might be used instead of infrared, infrared is preferred inside the vehicle for ease of installation and to minimize wire clutter. Such infrared installations also provide support for communicating with printers, scanners and other peripheral devices within the vehicle, i.e., the vehicular LAN preferably operates via infrared except when communicating with a remotely located terminal 4667 or with other remotely located network devices. - In another embodiment illustrated by
FIG. 46 b, service personnel use thevehicle 4666 for visiting customer sites. At the site, the terminal 4667 is carried within the customer's premises. Ordinarily, communication with the premises network would take place via relatively low power radio transmissions between the terminal 4667 and theaccess device 4665. However, communication can be achieved via a telephone jack link at the customer site, if: 1) the customer site blocks such transmissions; 2) the transmission range is exceeded; or 3) link costs or channel speed so justify. Once plugged into the telephone jack, the terminal 4667 automatically activates inactive routing table entries (by setting a flag therein) corresponding to possible telephone jack links. Thereafter, communication attempts to either the vehicular or premises LAN will offer routes via the customer's telephone jack link. -
FIG. 47 a is a flow diagram which more specifically illustrates the functionality of the access servers ofFIGS. 46 a-b in handling data, processing and routing requests. At ablock 4701, an access server awaits incoming communications which take the form of several types of previously mentioned requests such as data, object, processing, migration and routing requests. In addition at theblock 4701, the access server awaits the need to perform migration evaluation and processing, i.e., a time out period to lapse which occurs once every fifteen (15) minutes. This period may be modified (lengthened or shortened) as proves necessary depending on channel loading conditions. - Upon receiving a routing request as indicated at the
event block 4703, the access server accesses its routing table, at ablock 4705, in an attempt to identify the destination of the routing request in an upstream path. If the destination is identified, the access server forwards the routing request to the next network device in the upstream path toward the destination, at ablock 4707. Otherwise, if the destination is not identified in the routing table at theblock 4705, at theblock 4707 the access server transmits the routing request to the next network device in the downstream path. Thereafter, the access server returns to theblock 4701 to await another event. - At the
block 4701, upon receiving and logging a migration request, the access server vectors from an associatedevent block 4709 to determine whether it stores the requested migration information (e.g., the requested code or data or the program code and/or data associated with a processing resource migration request) locally or not at ablock 4711. If not, the access point branches to theblock 4705 to identify the closest (or any) network device in the spanning tree pathway. For example, if the routing table carries no entries for the migration information, the access server routes the migration request to the next downstream network device. Otherwise, if the routing table carries only an upstream or a downstream entry, the access server routes the request as specified by the routing table. However, if more than one entry exists for the requested migration information, the access server routes the migration request along the lowest cost spanning tree pathway (as indicated in the routing table). - However, if, at the
block 4711, the access server determines that it stores the migration information locally, the access server: 1) retrieves the migration information and records the migration event for update control, at ablock 4713; 2) accesses its routing table to identify the forwarding pathway, at theblock 4705; 3) forwards the retrieved migration information, at theblock 4707; and 4) returns to theblock 4701 to await another event. - After receiving and logging (counting the occurrence of) a processing request at the
block 4701, the access server branches via anevent block 4715 to determine whether the requested processing can be performed locally or not at ablock 4717. If not, the access server forwards the processing request at theblock 4707 per routing table instruction at theblock 4705. Afterwards, the access server returns to await another event at theblock 4701. - However, if the access server determines that it can perform the requested processing at the
block 4717, the access server performs the processing at ablock 4719, generates a response at ablock 4721, routes the response back to the requesting network device at theblock 4707 per routing table instruction at theblock 4705, and, finally, returns to theblock 4701 to await another event. - Upon receiving and logging a data or code request at the
block 4701, the access server vectors via anevent block 4723 to determine whether the requested data or code is stored locally at ablock 4725. If so, the access server branches to a block 4727 to retrieve the data or code from storage. Thereafter, the data or code is forwarded at theblock 4707 per routing table instruction at theblock 4705. Once forwarded, the access server branches to theblock 4701 to await another event. - At the
block 4725, if the access server determines that the requested data or code is not stored locally, the access server considers whether it should migrate the data at ablock 4729. The access server analyzes the overall link cost, the size of the requested data or code, the frequency of such requests, available local storage resources (some of which it may determine to recapture by purging other locally stored data, code or processing resources). - Specifically, if sufficient local resources are (or can be made) available, the access server determines the weighted average frequency of the requests for that data or code. The frequency is then multiplied by a predetermined fraction (50%) of the overall link cost for retrieving the data or object to the access server from the current source. The resulting number is then compared to a migration threshold number, for example “10”.
- If, at the
block 4729, the access server determines that the threshold number is greater than the resulting number, the access server, deciding not to migrate, branches to route the data/code request per routing table instruction at theblocks block 4729, the access server decides to migrate. Thus, at ablock 4731, the access server creates and sends a migration request (instead of merely forwarding the data/code request) and awaits delivery of the requested code or data. Upon receipt, at ablock 4733, the access server stores the data or code. Thereafter, the data/code is retrieved at the block 4727 for routing to the requesting network device via theblocks block 4701 to await another event. - Finally, upon receiving a time out event signifying the periodic need to perform migration evaluation and processing, the access server branches to execute migration procedures at a
block 4737, as described in more detail below. -
FIG. 47 b is a flow diagram utilized by the access servers ofFIGS. 46 a-b to manage the migration of data and program code from a source storage and/or processing device toward an end-point device. More specifically, the exemplary flow diagram illustrates the migration and purging procedures represented by theblock 4737 ofFIG. 47 a. - Upon encountering a timeout event (occurring every 15 minutes), an access server begins the illustrated procedure of
FIG. 47 b. At ablock 4751, the access server retrieves a data/code entry from its routing table for which it provides local storage. At ablock 4753, the current count recorded (indicating the number of requests for that data/code entry during the current time out interval) is multiplied by two thirds (⅔) and added to one third (⅓) the value of the previously recorded weighted frequency. The access server records the result as the new weighted frequency in the routing table entry. This weighting of frequency constitutes “aging” of the data/code routing table entry. - At a
block 4755, fifty percent (50%) of the overall cost of the link, i.e., from the access server to another source of the locally stored data/code, is multiplied by the newly recorded weighted frequency. The access server compares the results of the multiplication with a hysteresis threshold at ablock 4757. The hysteresis threshold is also referred to herein as a purging threshold. In premises network locations, for example, the hysteresis threshold is set at five (5) units below the migration threshold of theblock 4729 inFIG. 47 a. However, the migration and hysteresis thresholds may need be modified in alternate network embodiments, such as may be found in vehicular network installations. - If the hysteresis threshold is exceeded, the access server determines that it should continue to store the data/code, and branches to a
block 4759 to determine whether there are any remaining entries for locally stored data/code which have not yet been considered for purging. Alternatively, if the hysteresis threshold is not exceeded, the access server determines that the data/code item should be purged, and does so at ablock 4761. Thereafter, the access server branches to theblock 4759. - If, at the
block 4759, other data/code items which have not yet been considered for purging, the access server repeats the purging consideration of theblocks 4751 through 4759 until all locally stored data/code items have been considered. At that point, the access server branches to block 4763 to begin migration and purging consideration of processing resources. - First, the access server retrieves a routing table entry relating to processing resources, i.e., supporting program code and any associated data. At a
block 4765, the access server ages the entry, i.e., performs the aforementioned weighted frequency averaging. Thereafter, fifty percent (50%) of the overall link cost is multiplied with the new weighted frequency at ablock 4767. If the entry indicates local storage of the processing resources at ablock 4769, the access server compares the results with the hysteresis threshold at ablock 4771. If above the hysteresis threshold, the access server continues to store the processing resources, branching to consider any remaining processing resource entries at ablock 4775. Otherwise, the access server purges the stored resources at ablock 4773 before considering any remaining entries at theblock 4775. - Alternately, if the routing table entry indicates that the processing resources are not stored locally, at a
block 4777, the access server determines whether it has been configured with the hardware necessary to perform the processing. If not, the access server branches to theblock 4775 to consider other entries. Otherwise, at ablock 4779, the access server compares the migration threshold with the result, i.e., 50% of the link cost multiplied by the new weighted frequency. If the result does not exceed the migration threshold, the access server branches to theblock 4775 to consider other entries. If the result exceeds the migration threshold, the access server formulates and routes a migration request for the processing resources, awaits the responsive delivery and stores the resources locally at ablock 4781, before branching to theblock 4775. - At the
block 4775, if the access server determines that other processing resource entries have not been considered for purging or migration, it repeatedly branches back to theblock 4763 to carry out the consideration cycle until complete. Thereafter, the migration/purging procedure ends, and the access point returns to theblock 4701 ofFIG. 47 a to await the occurrence of another event. -
FIG. 48 is a schematic diagram of the access servers ofFIGS. 46 a-b illustrating an exemplary circuit layout which supports the functionality described in reference toFIGS. 47 a-b. In particular, a typical access server, anaccess server 4801, is configured withtransceiver circuitry 4803 and associatedantenna 4805 for participating in the premises, peripheral and/or wide area networks. In addition, another transceiver, atransceiver circuit 4807, and associatedantenna 4809 might be added, for example, to support WAN or cellular communications. Although not shown, interface circuitry for other wireless or wired communication links may be included in the access server configuration when needed. -
Processing circuitry 4811 provides at least three processing functions for the access server by managing or performing: 1) communication processing functionality; 2) migration and purging; and 3) local resource processing. Although in most embodiments, theprocessing circuitry 4811 comprises a single microprocessor, it may comprise several. Moreover, if theprocessing circuitry 4811 is not configured to perform migration and local resource processing, the illustrated access device operates as an access point. - The
processing circuitry 4811 utilizes amemory 4813 for short term and long term bulk storage. Thememory 4813 comprises hard drive storage, dynamic RAM (random access memory), flash memory, and ROM (read only memory). However, all other types of memory circuits or devices might alternately be used. - Specific hardware configurations needed to accommodate specialized processing requests are represented by a circuit/
device block 4815. However, such hardware need not be present to service relatively basic processing requests. Additionally, access servers may either be battery powered although, if the network configuration permits, AC (alternating current) power is preferred. -
FIG. 49 a is a specific exemplary embodiment of an access server in a multi-hop communication network utilized for remote processing of 1-D (one dimensional) or 2-D (two-dimensional) code information. In this embodiment, acode reader 4901 is used to capture and transmit code information for further processing, including decoding, by a remote access server in a premises LAN. Specifically, a user brings thecode reader 4901, which preferably is a CCD (charged coupled device) type reader, into a reading relationship with a 2-D code 4903 located on acontainer 4905. Light reflected from thecode 4903 is received by thecode reader 4901 and directed onto the CCD located within the reader to “capture” the code image. - To enable the CCD to operate properly, however, it may first be necessary for the reader to focus the image on the CCD. Such focusing can, for example, be performed by conventional techniques known in the camera art. As another example, one or more spotter beams are presently used to ensure that the user is holding the reader the proper distance from the code to enable the CCD to properly capture the image.
- Once captured, the code image may then be digitized within the reader to create a digital signal representative of the code image, which is then transferred, via RF transmissions, to other network devices for further processing. Alternatively, the
reader 4901 may transmit a modulated analog signal representative of the code image to other network devices for further processing. - In any event, the
code reader 4901, an end-point device, forwards the code image signal downstream in the premises LAN to the first access server in the network that has the capability of decoding the signal into the usable information represented by thecode 4903. As discussed above, any one or all of the access devices 4907-4913 may be an access server and contain the digital signal processing circuitry necessary to decode the code image signal. For example, the network may be designed such that theaccess device 4907 is an access server which performs decoding for all code readers, such as thecode reader 4901, being used in a designated area. If, however, theaccess device 4907 is merely an access point, or is an access server but does not have decoding capability, then theaccess device 4907 relays the code image signal downstream. - More specifically, and as discussed more completely above, the
code reader 4901 sends a processing request downstream to theaccess device 4907. If theaccess device 4907 is an access point, the processing request is simply relayed downstream to theaccess device 4909. If theaccess device 4907 is an access server, it looks up in its table to determine whether it has the capability to perform the type of processing requested, i.e., decoding. If it does, theaccess device 4907 sends an acknowledge and thecode reader 4901 forwards the code image signal to theaccess device 4907 for decoding. Once decoded, the information may be re-transmitted to thecode reader 4901 for display on a screen (not shown). In addition, or alternatively, theaccess device 4907 may send a good read signal to thecode reader 4901 to indicate to the user that the reading operation has resulted in a valid reading. The decoded information may also be transmitted to ahost computer 4915 or other network device for further processing. - If the
access device 4907 does not find decode capability listed in its table, it forwards the processing request downstream toaccess device 4909. Likewise, ifaccess device 4909 is an access point or an access server without decode capability, the processing request is forwarded downstream to theaccess device 4913. Onceaccess device 4913 receives the processing request, it also examines its table to determine whether it, or any device upstream of it (such as, for example, access device 4911), has the capability to service the processing request. If it does locate such capability, it sends an acknowledge upstream to thecode reader 4901 which forwards the code image signal to theaccess device 4913 for decoding thereby or for routing to the upstream access device having that capability. - If the
access device 4913 does not locate decode capability in its table, it forwards the processing request tohost computer 4915 for decoding thereby or so that thehost computer 4915 can locate a device having the capability to service the processing request. Of course, as mentioned above, the network could be configured such that each one of the access devices 4907-4913 is an access server having the circuitry necessary for decoding. - While a CCD type code reader is preferred with respect to the embodiment of
FIG. 49 a, other types of code readers, including laser scanners, are also contemplated. Furthermore, while the above description places the decoding circuitry in a device external to thecode reader 4901, thecode reader 4901 may house such decoding circuitry and may transmit decoded data to external network devices for further processing. However, there are many advantages to placing the decoding circuitry external to thecode reader 4901. For example, because the code reader is a portable device and likely battery-powered, power conservation as well as reader size and weight become important design considerations. By placing the decoding circuitry in a device external to thereader 4901, the reader uses less power and may be smaller and lighter than if the decode circuitry is placed in thecode reader 4901. Further, in an environment where numerous code readers are used, placing the decode circuitry in one or a few external devices rather than all readers, which are often dropped by users, reduces the chances that the decode circuitry will be damaged. In addition, such a configuration reduces the amount of circuitry used and consequently results in lower reader manufacturing costs. - In addition, the
code reader 4929 is configured to collect signature, printed text and handwriting images for further processing. Although further processing can be performed onboard within thereader 4929, in one embodiment it occurs within an access server. - Either way, such processing first involves the identification of the type of information contained within the image. If the user does not simplify the process by identifying the type of image captured, automatic identification is invoked. This occurs by first attempting to identify the image as a 2-D code. If this fails, the processing involves an attempt at character recognition to identify any printed text that might exist within the image. If no text is found, an analysis is performed to determine whether the image is a handwritten signature. Finally, if all else fails, the image is generically classified as a picture. Several examples of pictures include: a) images of bakery shelf space in a given store for subsequent collection and evaluation of ones competition; b) images of broken equipment for transmission to remote experts for service advice; and c) images of metering or monitoring displays for billing or usage verification.
- After identification, each type of data receives yet further processing. Decoded 2-D code information is forwarded and acknowledged. Handwritten signatures are compared with known authentic counterparts. Other types of images may be associatively forwarded, stored, displayed and/or acknowledged.
-
FIG. 49 b is an alternate embodiment ofFIG. 49 a wherein communication between the 2-D code reader and the access devices takes the form of modulated infrared transmissions. Specifically, as discussed above with respect toFIG. 49 a, a user uses acode reader 4917 to read a 2-D code 4919 on acontainer 4921. The user then points thecode reader 4917 at aninfrared transceiver 4923 of anaccess device 4925 and transmits a processing request to theaccess device 4925 using infrared transmissions. To facilitate receipt of the infrared transmissions by theinfrared transceiver 4923, the reader may disperse its transmissions, say, for example, four inches over a distance of ten feet. Such dispersion allows a user to be less accurate in aiming thecode reader 4917 at theinfrared transceiver 4923. Theinfrared transceiver 4923 may be, for example, a phototransistor/photodiode pair. - As above, if the
access device 4925 is simply an access point, the processing request is simply relayed downstream, via either RF or infrared transmissions, to a further access device downstream. If theaccess device 4925 is an access server, it looks up in its table to determine whether it has the capability to perform the type of processing requested. If it does, theaccess device 4925 sends an acknowledge via infrared transmissions to thecode reader 4917 and thecode reader 4917 forwards the code image signal to theaccess device 4925 via infrared transmissions for decoding. Theaccess device 4925 may then transmit the decoded information to thecode reader 4917 for display on a screen and/or forward the decoded information to ahost computer 4927 for further processing. - If the
access device 4925 does not find decode capability listed in its table, theaccess device 4925 forwards the processing request to one of theaccess devices FIG. 49 a. When such a device is located, the code reader, via infrared transmissions, performs a batch forwarding of the stored image data to theaccess device 4925 for eventual decoding by one of theaccess devices host computer 4927 or another device in the premises LAN (i.e., whichever is the first device located that has the decoding capability). In this embodiment, communication between access devices may be achieved using either RF or infrared transmissions. Furthermore, a user may choose to directly communicate with any specific access device in the network simply by pointing thecode reader 4917 at that device and transmitting a processing request. -
FIG. 49 c is an alternate embodiment ofFIG. 49 a wherein indirect communication between the 2-D code reader and the access servers takes place via holstering or docking access servers. Specifically, as discussed above with respect toFIG. 49 a, a user uses acode reader 4929 to read a 2-D code on a container. The user then places thereader 4929 in aholster access device 4931. The user may support theholster access device 4931 by ashoulder strap 4933 andbelt 4935 to facilitate portability. - In one embodiment, the
holster access device 4931 may be configured to perform decoding so that when thecode reader 4929 is placed inside theholster access device 4931, thecode reader 4929 may transmit the code image data to theholster access device 4931 for immediate decoding thereby. Alternatively, if theholster access device 4931 does not house the necessary decoding circuitry, theholster access device 4931 transmits a processing request downstream to one of access devices 4937-4943 to locate such decoding capability similarly as discussed above with respect toFIG. 49 a. - In a scenario where
numerous codes 4945 are to be read successively by thecode reader 4929, thecode reader 4929 may store the read image data and perform a batch transmission to theholster access device 4931 for immediate decoding thereby if theholster access device 4931 is configured with decoding circuitry. In another embodiment where theholster access device 4931 is not so configured, thecode reader 4929 transmits a processing request to theholster access device 4931 via infrared transmissions. Theholster access device 4931 in turn forwards the processing request downstream via RF transmission to one of the access devices 4937-4943 to locate such decoding capability similarly as discussed above with respect toFIG. 49 a. When such a device is located, the code reader, via theholster access device 4931, performs a batch forwarding of the read image data for eventual decoding by one of the access devices 4937-4943 or by ahost computer 4947 or another device in the premises LAN (i.e., whichever is the first device located that has the capability). - In an alternate embodiment, batch transmission of stored image data may be performed via a
docking access server 4949. When a user has completed his code reading tasks, he docks thecode reader 4929 in abay 4951 of thedocking access server 4949. Other users, when their tasks are completed, may similarly dock their code readers in other bays of thedocking access server 4949. In one embodiment, similarly as discussed above with respect to theholster access device 4931, once a code reader is docked in thedocking access server 4949, the code reader performs a batch transmission of its stored code image data to thedocking access server 4949 for immediate decoding thereby if thedocking access server 4949 is configured with decoding circuitry. In another embodiment where thedocking access server 4949 is not so configured, thecode reader 4929 transmits a processing request to thedocking access server 4949 via infrared transmissions. Thedocking access server 4949 in turn forwards the processing request downstream via RF transmission to one of the access devices 4937-4943 to locate such decoding capability similarly as discussed above with respect toFIG. 49 a. When such a device is located, the code reader, via thedocking access server 4949, performs a batch forwarding of the stored image data for eventual decoding by one of the access devices 4937-4943 or by ahost computer 4947 or another device in the premises LAN (i.e., whichever is the first device located that has the decoding capability). - In the embodiments of
FIG. 49 b or 49 c wherein a number of codes are read and the captured image data is stored within the code reader for batch transmission at a later time, it may be desirable to configure the network such that decoding is performed first within the code reader. Specifically, when a user successively reads a plurality of codes, a user can ensure that each reading operation is successful or valid when the decoding is done immediately within the reader and the user is provided some sort of good read acknowledgment by the reader. On the other hand, if the image data is simply stored for later decoding by an off-site device, the user cannot be sure that each reading operation resulted in a valid read. Such a situation may not be a problem, however, if the code and reader are highly reliable or if simple information, such as a signature, is being read which may not require a validity determination. -
FIG. 50 is a schematic diagram similar to that shown inFIG. 48 which illustrates the circuit layout used in an access server ofFIG. 49 to process the 2-D code information. Specifically, in anaccess point 5001, a processing circuitry 5003 manages 2-D code processing functionality as indicated by ablock 5005. Although migration processing functionality is also present, in some embodiments such as those which use a single access server, the migration processing need not be present. - In a
memory 5007, theaccess point 5001 also stores a database of known 2-D images in animage database 5009. To further support 2-D code processing, digitalsignal processing circuitry 5011 has been added. - As configured, the
signal processing circuitry 5011 assists the exact decoding of 2-D images, and may also be used in the image comparison process of received 2-D images with thedatabase 5009 of stored images. -
FIGS. 51 a-b are flow diagrams illustrating the operation of the 2-D code processing access servers ofFIGS. 49-50 . InFIG. 51 a, when the access server receives image data via its LAN transceiver, it first attempts at ablock 5101 to exactly identify the code information from the received code image data. Specifically, the access server uses its code processing circuitry to perform an analysis of the received image data using a decoding algorithm specifically designed for decoding the type of code which was read. A number of 2-D code types exist, including, for example PDF-417, Maxicode, etc., which have specific corresponding decoding algorithms or rules. - After its analysis is complete, the access server next determines whether the exact identification was successful at a
block 5103. Determining whether an identification was successful often depends on the type of code used. If enough redundancy is built into the code, then the loss of a number of bits of data resulting, for example, from a partially blurred image may not be fatal to a successful exact identification. If, on the other hand, the type of 2-D code being read is less “tolerant,” then even the loss of a single bit might result in a failed exact identification. - In any event, if the exact identification is successful, at a
block 5105, the access server sends the identified code information to a predetermined destination for further processing, and acknowledges the successful identification. If the exact identification is not successful, however, the access point performs a further analysis of the image data to attempt to identify the corresponding code information. - At
blocks - After the access point completes its comparison and has identified the closest or best match between the received image data and the stored images, the access point then determines at a
block 5111 if the overall value resulting from the best match comparison is above a predetermined accuracy threshold. Such an accuracy threshold may vary depending on, again, the type of code that was read, and the level of importance associated with a good read. If the overall value is below the predetermined threshold, the access server, as above, sends the identified code information (corresponding to the best match stored image) at ablock 5105 to a predetermined destination for further processing, and acknowledges the successful decode. - If the overall value of the best match comparison is above the predetermined threshold, then, at a
block 5113, the access server forwards a bad read or retry message to the code reader to indicate to the user to reread the code. -
FIG. 51 b is similar toFIG. 51 a except that the comparison of the received image with stored images is performed before any exact identification is attempted. Specifically, the access server first compares the received image to the stored images at ablock 5115, identifies the closest match at ablock 5117, and determines whether the overall value of the comparison is above a predetermined accuracy threshold at ablock 5119. If the overall value is below the threshold, the code information relating to the best match stored image is simply forwarded at ablock 5121 to a predetermined destination for further processing. - If the overall value is below the threshold, then the access server attempts the exact identification and determines success at
blocks block 5121. If it is not successful, the access device forwards a retry message to the code reader atblock 5127. -
FIG. 52 illustrates the structuring of 2-D code information so as to support a hierarchical recognition strategy as used by the access server ofFIGS. 49-50 . In the image database of an access server, each known image is stored and hierarchically organized in sections. Each section of image contains information relating to a specific category of information. For example, as shown, images may include a main category followed by further and further subcategories. Thus, the image database stores all of the images in the main or first category at a top level in the hierarchy. Under each main category image, the image database stores only those subcategory images which coexist with the main category image on known complete 2-D code images. Similarly, under each subcategory image, the image database only stores sub-sub-category images which coexist with the main category image and the subcategory image. -
FIG. 53 is a diagram illustrating an exemplary 2-D code 5301 wherein the hierarchical structure ofFIG. 52 is implemented. From left to right, top to bottom, the illustrated 2-D code provides image portions of categories separated by five bit line borders, such as aborder 5303. As shown, the main category image represents “grocery”. The subcategory represents “beans”, and so on for the further subcategories. - Using such a hierarchical categorization, the access server can more rapidly perform the process of image comparisons. For example, at a main category level in the hierarchy, a grocery image, an office supply image and general merchandize image might be the only three types of main category images known to the access point. If after comparing the received and the stored main categorization images, no acceptable match is found, the attempted comparison ends without ever having to compare the remainder of the potentially thousands of remaining images stored in the image database. Similarly, if a main level match is found with the stored office supply image, no comparison need be made with the plethora of remaining images under the grocery image main category.
- Further detail of the efficiency of such a hierarchical organization can be found below in reference to
FIG. 54 . In addition, although the 2-D code illustrated inFIG. 53 is not necessarily a current 2-D code standard, the principle of hierarchical organization can be utilized in current 2-D code standards to take advantage of the image comparison efficiencies involved. -
FIG. 54 is a flow diagram illustrating the functionality of the access server ofFIGS. 49-50 in carrying out the hierarchical recognition strategy ofFIGS. 52 and 53 . The access server begins the hierarchical image comparison process, and, at ablock 5401, extracts from the received 2-D image a first subcategory image portion, i.e., the main category image indicating “grocery” for example. At ablock 5403, the access server compares the extracted image with each of the main category images stored in the image database. If the closest comparison fails to fall within an accuracy threshold at ablock 5405, the access server indicates that the comparison has failed at ablock 5407, and ends the process. - Otherwise, if the comparison is within the accuracy threshold at the
block 5405, the comparison process continues with the access server checking to see if there are any further subcategories at ablock 5409. Because other subcategories exist, the access point branches to repeat the process beginning at theblock 5401. This time, the access server extracts from the received image the image portion relating to the first subcategory (beans) for comparison at theblock 5403 with only those first known subcategory images having “grocery” as the main category. - Again if no match within the threshold is found, the access point vectors to indicate failure at the
block 5407, and terminates the process. However, if a subcategory match is found, the access point branches to handle the sub-sub-category in a similar way. If, at theblock 5409 after successfully repeating the comparison a number of times, the access point concludes that there are no further subcategories to compare, the access point delivers the 2-D code information stored in the image database and associated with the matching stored image, and successfully ends the code identification process. - The known image database is supplemented by exact decoding as illustrated for example in
FIG. 51 b, wherein any successful exact decode is used to provide both categorized image and information portions for subsequent decoding through comparison. In addition, although the hierarchical structuring described herein offers many advantages, it need not be implemented to carry out the comparison process. -
FIG. 55 a is a diagram illustrating the overall flow of both data and voice through another embodiment of the hierarchical communication network of the present invention. Specifically, a premises network associated with apremises 5501 comprises ahardwired backbone LAN 5503 and a wireless network ofaccess devices backbone LAN 5503 preferably comprises a coaxial or twisted-pair ethernet link, it may alternately constitute, for example, a token ring, fiber optic, infrared, serial or parallel link. - A variety of network devices also participate in the premises network.
Computers access device 5505 and atelephone access device 5519 directly participate in thebackbone LAN 5503.Mobile terminals stationary phone 5525 also participate wirelessly via any of theaccess devices wireless phone 5527 is configured to communicate with an independent radio channel associated with theaccess device 5507. Theaccess device 5507 is configured with a second radio transceiver for that purpose.Stationary phones telephone access device 5519, thecomputers access device 5511, respectively. - Supporting both voice and data transport,
telephone lines premises 5501. - Associated with a
vehicle 5557, avehicular network 5551 comprises an access device 5553 andmobile terminals vehicle 5557. Such other devices participate directly or indirectly on thevehicular network 5551 via wireless or hardwired interconnection. - Devices within the
vehicular network 5551 can communicate via a WAN having selective operation between the access device 5553 and theaccess device 5513. To support the WAN, both of theaccess devices 5553 and 5513 are configured with a higher power transceiver dedicated to WAN communications. In addition, communication between the vehicular and premises networks also occurs when thevehicle 5557 drives within range of the premises network. At that point, the vehicular network effectively merges with the premises network for free communication flow between the two networks. Thus, the devices within the vehicular and premises network store non-critical messages and information destined for devices within the other network until they are in range and merged. Critical messages and information may be immediately communicated via the relatively higher cost WAN. - Similarly, at a
remote site 5561 located some distance away from thepremises 5501, astationary phone 5563 may communicate via a telephone line 5565 (and associated telephone switching network) to the various network devices participating in the premises or vehicular networks. - At a
remote site 5571, a wired and wireless network also exists. Anaccess device 5573 participates in a wireless network and in ahardwired backbone LAN 5575. Atelephone access device 5577 participates on thebackbone LAN 5575, providing access to and from atelephone line 5579. Amobile terminal 5581 participates in wireless communication with theaccess device 5573. Thus, through thetelephone line 5579 and the associated telephone switching network (not shown), the network at theremote site 5571 can be communicatively coupled to the overall network at thepremises 5501. - Data flows through the illustrated communication system in the same manner as described above in reference to
FIGS. 1-54 . To summarize, data is segmented into packets (herein “data packets”) which are routed per spanning tree table specification through the wireless network andbackbone LAN 5503. Data is also routed as need be through a conventional telephone switching network (not shown) via thetelephone lines 5535, 55.36, 5537, 5539, 5541 and 5579. Data routed through the telephone switching network takes the form of a serial data stream using commonly known hardwired modem technology. - Voice signals are similarly routed. Voice or other audio signals (herein “voice signals”) traveling through the wireless pathways of the premises network typically flow in a digital, packetized form (herein “voice packets”). However, voice signals in an analog form may also be modulated and transmitted in a non-packetized form such as with communication between the
wireless phone 5527 and theaccess device 5507. Voice signals travel through thewired backbone LAN 5503 are also packetized, i.e., they travel in voice packets. - Voice signals traveling through the telephone switching network (not shown) may either remain in a continuous, non-packetized form (herein a “voice stream”) as captured, for example, by a microphone, or be routed as voice packets using known modem technology. The option used here is dependent on the form of the voice signals upon entering the telephone switching network, and the desired form of the voice signals upon exiting the telephone switching network. For example, voice signals flowing between the
telephones telephones - Alternately, for example, voice signals flowing between the
mobile terminals 5521 and 5581 (between premises) take the form of voice packets while traveling through the telephone switching network via thetelephone lines mobile terminals - Conversion between forms along a communication path between, for example, the
mobile terminal 5523 and thetelephone 5563 does take place, however. Specifically, the mobile terminal 5523 transmits a call route request packet which includes the identity of the destination device, thetelephone 5563. Upon receiving the route request packet, the access device, consulting its routing table, concludes that it does not have a telephone line pathway (or any other pathway) to thetelephone 5563. Thus, theaccess device 5513 sends the request toward theroot access device 5505, i.e., to theaccess device 5509. Upon receipt, theaccess device 5509 consults its routing table, discovers that it has access to thetelephone line 5541 and records the availability of thetelephone line 5541 in the route request packet. Thereafter, theaccess device 5509 transmits the route request packet toward (and to) theroot access device 5505. Upon receiving the packet, theroot device 5505 consults its routing table yet identifies no lower cost telephone line access than that provided by theaccess device 5509 as was previously recorded in the route request packet. Therefore, theroot access device 5505 converts the route request packet into a reply packet and forwards it back to the terminal 5523 via theaccess devices - Upon receipt of the reply packet, the terminal 5523 offers to the user and/or software of the terminal 5523 the telephone line routing pathways (in this case only one) identified in the reply packet. Upon selecting the offered pathway, the terminal 5523 sends a call setup packet to the
access device 5513 which forwards the setup packet to theaccess device 5509. Upon receipt, theaccess device 5509 must determine from the setup packet whether the destination of the call expects a voice stream or voice packet transfer. If the setup packet indicates a destination identifier which is not the telephone number being dialed, theaccess device 5509 will use voice packet transfer. Alternatively, which is the case in this example, the setup packet indicates that the destination identifier is the telephone number being dialed, and theaccess device 5509 concludes that it must send a voice stream. - Thereafter, the
access device 5509 interfaces between themobile terminal 5523 and thetelephone 5563. Particularly, theaccess device 5509 dials the telephone number of thetelephone 5563. If a busy signal is detected, theaccess device 5509 hangs up, and delivers a busy message to themobile terminal 5523 via theaccess device 5513. If a ringing signal is detected, theaccess device 5509 sends a ringing message to the mobile terminal via theaccess device 5513. Upon detecting a pickup, theaccess device 5509 delivers a connect message to themobile terminal 5523. The mobile terminal 5523 may then begin sending voice packets to theaccess device 5509. Similarly, a voice stream from thetelephone 5563 arrives at theaccess device 5509. - In addition to providing call setup assistance, the
access device 5509 also assists in conversion between voice stream and voice packet forms. Specifically, the access device queues up the voice packets received from the mobile terminal 5523 then begins converting them through a digital to analog conversion process into a voice stream form which it delivers to thetelephone 5563. Upon receiving the voice stream, thetelephone 5563 reproduces the voice which originated frommobile terminal 5581. - The
access device 5509 also receives the voice stream from thetelephone 5563 and begins converting it through an analog to digital conversion process into a sequence of voice packets. As the voice packets are generated, they are routed toward themobile terminal 5523. Upon receipt of the voice packets, the mobile terminal 5523 queues up the packets then performs a digital to analog conversion process to generate a voice stream. The mobile terminal uses the generated voice stream to reproduce (via a speaker) the voice which originated at thetelephone 5525. Further detail regarding this process can be found below. - In the exemplary illustration of
FIG. 55 a, the circuitry for converting voice signals between the voice stream and voice packet forms, hereinafter “conversion circuitry”, can be found in thetelephone access devices mobile terminals computer 5517,telephone 5525 andaccess devices access devices telephone access devices - Because they are not configured with conversion circuitry, the
mobile terminals wireless phone 5527, i.e., they communicate voice signals in a voice stream form (e.g., through microphone pickup, amplification, modulation and transmission without packetization) on a communication channel preferably independent of colocated packet-based communication channels. Thus, theaccess devices mobile phone 5527,mobile terminals - For example, voice communication with the mobile terminal 5559 typically requires assistance from the access device 5553. Such assistance involves packetizing voice streams received from the
mobile terminal 5559, and converting voice packets to voice streams for delivery to theterminal 5559. Generally, the access device 5553 does not have to invoke its conversion circuitry when communicating voice to and from the terminal 5555 (unless, for example, the voice session involves communication between themobile terminals 5555 and 5559). - Moreover, although the telephone switching network might change the form of the voice stream, such as through time multiplexing, modulation multiplexing or packetization, for example, such changes are transparent to the illustrated network and are ignored herein. Thus, whether such changes occur or not, a voice stream flowing through a telephone switching network is still referred to herein as a voice stream.
-
FIG. 55 b is a diagram which illustrates a summary of the various types of communication pathways that may be used for setting up voice sessions between a source and destination network device. For example, nearly all of the pathways shown inFIG. 55 a can be summarized with reference toFIG. 55 b. - Network devices, such as mobile terminals or telephones, are typically capable of operating as a source device (a call origination point) or a destination device (a call destination point). Thus, as illustrated, the “source” and “destination” designations merely identify which of the network devices originates the call and which device receives the call.
- A
source device 5583 may establish a voice session with adestination device 5585 via a variety of types of pathways should such pathways be available. However, many of the types of pathways require the assistance of conversion circuitry when conversion between voice packets and voice streams is required. Many types of pathways also require call processing circuitry for interfacing with telephone switching networks. - For example, a network device which only captures and transceives voice streams (such as a conventional telephone) can communicate with any other such device without assistance so long as the pathway between the two provides-voice stream transport, and the two devices have access to a protocol for establishing the voice session. Such is the case when the source and
destination devices telephone switching network 5596 for call setup and voice stream routing. - However, should the pathway between the two telephones comprise a
hardwired connection 5598, the telephones require assistance in, at a minimum, setting up the call. Such setup consists of simulating a connection with the telephone switching network by providing dial tones, busy signals, ring signals, etc., to each telephone. While the voice session is in progress, no assistance is needed and the telephones exchange voice streams over thehardwired link 5598. - Depending on the nature of the
hardwired link 5598, however, such assistance may not be sufficient if thehardwired link 5598 also operates pursuant to another protocol, such as a packet-based TCP/IP, for example, which may or may not require the sharing of thehardwired link 5598 with other network devices. If such is the case, assistance to the two telephones also involves capturing full use of the hardwired link 5598 (through a request for a full bandwidth voice session), or adapting the voice stream into a form which may be transferred over thehardwired link 5598. - Any level of assistance needed by the source and
destination devices 5583 and 5885 is provided by corresponding assistingaccess devices source device 5583 is a conventional device such as a typical telephone, it requires the assistance of anaccess device 5587 to establish a voice session via a packet-based wireless link (or network) 5597. Such assistance involves both the use of conversion circuitry in the access device for adapting to the packet-based requirements of thewireless link 5597, and use of call processing circuitry to establish the call through thewireless link 5597. If, however, thesource device 5583 is configured with conversion and call processing circuitry, the assistingaccess device 5587 would not be needed. Similarly, if the destination device has conversion circuitry, the assistingaccess device 5589 is also not needed. - The dashed line borders surrounding the assisting
access devices destination devices - If assistance is required, the pathway for communicating between the
source device 5583 and its assistingaccess device 5587 may involve: 1) atelephone switching network 5590; 2) ahardwired link 5591, such as an ethernet LAN, RS232, or telephone wire connection; or 3) awireless link 5592, involving, for example, cellular phone transmissions or shorter range, relayed or point to point voice stream transmissions such as may be found in typical wireless phone transmissions to its base unit. - In addition, the assisting
access device 5587 may assist in basic voice session setup and control. For example, to establish a voice session, the assistingaccess device 5587 may simulate a typical telephone switching system by delivering dial tones, performing touch tone detection and delivering destination ringing and busy signal indications to thesource device 5583. Moreover, if necessary, the assistingaccess device 5587 will adapt the analog audio/voice signals captured by the source device 5583 (i.e., the voice stream) for transport toward thedestination device 5585, and adapt received voice information for transport to thesource device 5583 for playback. - No assisting
access device 5587 is needed, for example, where thesource device 5583 has been configured to: 1) capture and adapt a voice stream into a packet-based form (via conversion circuitry) for transport to thedestination device 5585; 2) adapt incoming voice packets from thedestination device 5585 into a voice stream form (via conversion circuitry) for playback; and 3) generate and respond to call setup and session processing control. - Similarly, if the assisting
access device 5589 is required, the pathway for communicating between thedestination device 5587 and the assistingaccess device 5589 may involve: 1) atelephone switching network 5593; 2) ahardwired link 5594; or 3) awireless link 5592. The assistingaccess device 5589 may also assist in basic voice session setup and control by, for example, simulating a typical telephone switching system. - If necessary, the assisting
access device 5589 will also adapt voice streams for packetized transport toward thesource device 5583, and adapt voice packets received for transport to thedestination device 5585 for playback. No assistingaccess device 5589 is needed, for example, where thedestination device 5583 has been configured to perform the assisting functionality. - No assisting
access device 5589 is needed, for example, where thedestination device 5585 has been configured to: 1) adapt captured audio/voice signals for packet-based transport via the communication network toward thesource device 5583; 2) adapt incoming audio/voice packets into an analog form for playback; and 3) generate and respond to call setup and processing control packets. - The
source device 5583, with or without assistance from the assistingaccess device 5587, may establish a voice session with the data device 5585 (itself with or without assistance from the assisting access device 5589) through a variety of pathways. For example, the session may be established directly through a telephone line link to thetelephone switching network 5596. The session may also be established through awireless link 5597 orhardwired link 5598. Otherwise, the voice session pathway may require routing assistance via one or more “non-assisting”access devices 5599. For example, as illustrated inFIG. 55 a, the non-assisting access devices are arranged in spanning tree configurations to route voice session packets back and forth between source and destination devices (via assisting access devices where necessary). - Links between the source device 5583 (via the assisting access device when needed) and the one or more
non-assisting access devices 5599 may consist of a hardwired, telephone switching network or wireless link as illustrated. Similarly, links between the one or morenon-assisting access devices 5599 and thedestination device 5585 comprise a hardwired, telephone line or wireless link. -
FIG. 56 a illustrates an embodiment of the conversion and call processing circuitry contained within a computer card 5601 (preferably a PCMCIA card although IDE, PCI, etc. type cards might alternately be used). Thecomputer card 5601 plugs into a host device such as an access device or computer. Through plugging thecard 5601 into the host device, the control anddata bus 5613 of the card becomes available to the host device's processing unit. - To complete installation of the
card 5601, the host device is loaded with configuration, maintenance and device driver software. The configuration software is used to configure thecard 5601 to operate in different configurations such as is illustrated inFIG. 55 a or 55 b. For example, when installed in thecomputer 5515, thecomputer card 5601 must be configured to function with a conventional telephone, thetelephone 5530 ofFIG. 55 a, in a line sharing arrangement. The dual-line phone 5531 associated with thecomputer 5517 receives a similar software configuration but does not require a line sharing arrangement. - The maintenance software permits the user of the host device to add or modify instructional voice messages to be delivered, and (as will be discussed in reference to
FIG. 63 below) various telephone numbers of remote sites with cross-referenced internet addresses in a cross-reference database. - The device driver software allows the host device and the
computer card 5601 to selectively interact to perform various joint functionality. Thus, when needed, thecomputer card 5601 has access to the host device's processing unit, associated storage devices and other resources. - With reference to the specific configuration of the computer 5515 (
FIG. 55 a), the telephone 5530 (FIG. 55 a) connects to aswitching circuit 5607 via aphone input line 5603. A telephone switching network also attaches to a switchinginput line 5605 of theswitching circuit 5607 via the telephone line 5536 (FIG. 55 a). - The
switching circuit 5607 senses a pickup of the telephone 5532 (FIG. 55 a) by monitoring thephone input line 5603. Upon sensing the pickup event, theswitching circuit 5607 communicates the event to acontrol processing circuit 5609. Thecontrol processing circuit 5609 responds by directing the delivery of a dial tone through theswitching circuit 5607 to the telephone 5532 (FIG. 55 a) attached to thephone input line 5603. - After delivering the dial tone, the
switching circuit 5607 waits for a number to be dialed. Theswitching circuit 5607 forwards the received dialed digits to thecontrol processing circuit 5609. Upon receiving the phone number and through activation of the device driver, thecontrol processing circuit 5609 sends the number along the control anddata bus 5613 to the host device in which thecomputer card 5601 is plugged, in this case the computer 5515 (FIG. 55 a). - The host device compares the received telephone number with the cross-reference database it stores. If the telephone number has an entry in the database, the host device will look to see if the user has indicated therein the desire to: a) always use the telephone switching network; b) always use an internet routing path; c) always attempt an internal routing path; or d) prompt the user each time a call attempted made. Otherwise, if no entry is found, the host device adds the number to the database with a “d)” type cross-reference, permitting the user to later modify the setting. Thereafter, the host device responds to the
computer card 5601 per the cross-reference entry identified. - If “a)” is identified, the host device directs the
control processing circuit 5609 to automatically dial the number on the telephone switching network via the switchinginput line 5605, and then interconnect thelines - If the host identified “b”, indicating that an internet pathway is required, the
card 5601 attempts to establish an internet connection through the telephone switching network via theinput line 5605. Alternately, in a preferred internet route embodiment, anauxiliary input line 5604 is used to maintain continuous internet connectivity via a dedicated line to the telephone switching network. Further detail regarding this configuration and process can be found in reference toFIG. 63 below. - If the host device identifies a “c)” type entry in its cross-reference database, the host device informs the
control processing circuit 5609 to pursue a voice session through an internal route. Thecontrol processing circuit 5609 responds by attempting to setup a voice session with assistance from the host device. Specifically, upon identifying the need to gain access to the premises network on which the host device participates, the host device accesses the premises network to setup the call. The host device uses its own resources, i.e., its own ethernet card in the case of thecomputer 5515, to establish and maintain the internally routed call. Thecontrol processing circuit 5609 provides call setup simulation (busy, ringing, hang up, etc. signals to the telephone 5530) and conversion processing as needed to establish and maintain the voice session. - If the host device identifies a “d)” type entry for the telephone number, the host device delivers a voice message through the conversion circuitry of the
computer card 5601 and to the user of the telephone 5530 (FIG. 55 a) via theinput line 5603. The message prompts the user to select a desired pathway via touch tone entry on the telephone 5530 (FIG. 55 a), and permits the user to set that pathway as a permanent default. The user's selection is forwarded to thecontrol processing unit 5609 which responds appropriately to the users request. For example, if the user selected the telephone switching network and requested that route be made a permanent option, thecontrol processing circuit 5609 would route the call as described above as if the host identified an entry type “a)” in its cross-reference database. In addition, thecontrol processing circuit 5609 forwards the request to the host device to change the entry to type “a)” for future calls. - In addition, if during setup the host device is informed that no conventional device such as a telephone is attached to the
input line 5603 or that no switching network access is available, etc., the host device andcomputer card 5601 interact to provide for any alternate configurations such as those illustrated inFIG. 55 a. For example, when acomputer card 5601 is placed into theaccess device 5509, theaccess device 5509 and thecontrol processing circuit 5609 coordinate to service the routing of voice packets in a voice stream form through the telephone switching network attached to thetelephone line 5541. Likewise, they coordinate to service routing of voice stream information from thetelephone line 5541 into the premises network in a packet-based form. - In addition, the host device and
computer card 5601 can be merged into one package such as thetelephone access device 5519. Therein, the functionality of the host processing andcontrol processing unit 5609 are merged. Thetelephone access device 5519 is also configured with an ethernet (10base2 or 10baseT) interface providing for internal routing through the premises. - In the specific configuration of the
computer 5515 ofFIG. 55 a, the computer 5515 (FIG. 55 a) can use the dialed number to establish a voice session through the premises network. To do this, the computer 5515 (FIG. 55 a) delivers a call setup request packet, which includes the dialed number, onto the backbone LAN 5503 (FIG. 55 a). As previously discussed, the setup request packet is then routed through the spanning tree network to a destination device. - If the call cannot be established because the destination device cannot be found, the
control processing circuit 5609 delivers (via its conversion processing circuits) to the telephone 5530 (FIG. 55 a) a message indicating that the destination device is off-line and prompts for a voice mail message. Similarly, if the call cannot be established because the destination is currently engaged in voice communication or has responded to the call setup request with a “do not disturb” indication, thecontrol processing circuit 5609 delivers a message indicating the status and prompts for voice mail. - If a user hangs up prior to initiating a voice mail recording, the control processing and
switching circuits control processing circuit 5609 directs theswitching circuit 5607 to interconnect thelines control processing circuit 5609 also directs an A/D (analog to digital)conversion circuit 5621 to begin digitizing the voice message received via asubtraction circuit 5631. Because thecontrol processing circuit 5609 disables a D/A (digital to analog)conversion circuit 5625 during the digitization process, thesubtraction circuit 5631 subtracts nothing from the incoming voice message. Thus, the entire voice message captured by the telephone 5515 (FIG. 55 a) is routed to the A/D conversion circuit 5621. - The A/
D conversion circuit 5621 produces digital samples of the voice message, and delivers each sample to anoutput buffer 5623. Thecontrol processing circuit 5609 interfaces with the computer 5515 (FIG. 55 a) via the loaded device driver to coordinate storage and delivery of the voice mail to the destination device as soon as delivery is warranted and possible. - If call setup proves successful, the
control processing circuit 5609 directs theswitching circuit 5607 to interconnect thelines computer 5515 via the backbone LAN 5503 (FIG. 55 a) in a voice packet form. - In response, the computer 5515 (
FIG. 55 a) strips out routing information from the packets, and coordinates with thecontrol processing circuit 5609 to deliver the remaining digitized voice information (hereinafter “voice data”) to aqueue time buffer 5627 via control anddata bus 5613. Thecontrol processing circuit 5609 waits a predetermined queuing period of time before beginning playback of a group of voice data. - Groups of voice data are defined by a group identifier contained in each voice packet received. For example, conversion circuitry which converts voice streams into voice packets adds group identifiers after identifying a group. To identify a group, the conversion circuitry monitors incoming voice streams for gaps in voice input, i.e., it attempts to identify the difference between captured speech and background noise. Upon identifying the lack of speech for a predefined gap time of about one second, the conversion circuitry assigns a different (pseudo-random) group identifier to subsequent voice packets. Likewise, upon identifying another gap, the conversion circuitry assigns another group identifier to voice packets generated thereafter.
- Thus, for each group of data (each group of voice data extracted from voice packets having a common group identifier), the
control processing circuit 5609 begins to wait the predetermined queuing time before beginning conversion. Thereafter, no queuing time is required until the next group of voice packets begin. - By using the queuing time in such a manner, the
control processing circuit 5609 can reasonably ensure continuous voice delivery of a voice group to the telephone 5530 (FIG. 55 a) under most circumstances without, if possible, introducing a delay that is so long as to be noticeable. - When the
buffer 5627 has sufficiently “queued up” a voice group, thecontrol processing circuit 5609 directs the delivery of the digital voice data from thebuffer 5627 to a D/A conversion circuit 5625 at the same sampling rate used to generate the voice packets. From the voice data, the D/A conversion circuit 5621 generates an analog voice signal, i.e., a voice stream, representing the voice captured by the destination device. The voice stream is then delivered to the telephone 5530 (via abuffer 5629,interconnect 5611, switchingcircuit 5611 and the input line 5603) for listening by the user. - The generated voice stream is also subtracted by a
subtraction circuit 5631 from the combined voice stream signals on theinterconnect 5611. In this way, the voice stream sampled by the A/D conversion circuit 5621 for delivery to the destination device consists only of the voice signals captured by the telephone 5530 (FIG. 55 a). Supporting this process, thebuffer 5629 isolates the incoming voice stream from the incoming voice stream combined with the outgoing voice stream so that the subtraction process can be realized. The A/D conversion circuit 5621 converts the voice stream captured by the telephone 5530 (FIG. 55 a) into a digitally sampled form (voice data) which is packetized with routing information and a voice group identifier for delivery by the host device (the computer 1515 ofFIG. 55 a) to the destination device. - Specifics regarding packetization of the voice data are managed between the
control processing circuit 5609 and the host device in view of the requirements of the delivery route at issue. In an exemplary embodiment, for internal network routing, each voice packet contains a 20 ms (millisecond) time period of compressed voice data samples. Thus, not considering routing delays, a received voice packet has a built-in 20 ms delay. - In that embodiment, upon receipt of a first of a group of such voice packets, a 200 ms queuing time is invoked before the first of such voice packets will be played back. This should ensure that 10 packets of a given group should be waiting at the destination for playback at any time, making it unlikely that any extraordinary delays associated with the routing of any one or several voice packets could result in an empty queue during attempted playback of the given group. So long as the overall delay, i.e., the voice packet delivery delay (as determined by round trip test packets sent during call setup) plus the 200 ms queuing time, do not exceed a predetermined threshold value of, for example, 500 ms, full duplex (two-way) voice communication should be possible with relatively unnoticeable delays.
- If required queuing and delivery time delays prove too long, e.g., to a point where they might annoy a calling party, the
control processing circuit 5609 can disable full duplex communication by selectively inhibiting the output of the D/A conversion circuit 5626 and the input of the A/D conversion circuit 5621 to provide communication connectivity to only one speaker at a time, i.e., half duplex connectivity. - Queuing times are identified during call setup and may be modified during the course of the call. Queuing should be as short as possible so that the parties involved cannot detect the overall delay. It should also be long enough to prevent detectable gaps in the reproduced voice signals during most channel loading conditions. The queuing time is generated from a combination of the maximum routing time expected between the source and destination devices less the nominal routing time, and that result plus a one hundred percent (100%) safety margin, i.e., twice the result.
- In a first embodiment wherein packet routing times remain fairly constant, the maximum and nominal routing times are fixed and based on overall channel characteristics (routing delivery times and variations thereof) established during network setup. In an alternate embodiment wherein packet routing times exhibit relatively slow variation, as previously mentioned, routing times are calculated from round trip routing times of test signals transmitted between the source and destination during call setup (while the destination device is “ringing”). This embodiment is preferable where routing time shows little variation throughout a calling session. If routing times vary much over the course of a single calling session, in a third embodiment, round trip test signals are interspersed with voice packets and decisions made regarding queuing times and full or half duplex considerations are reevaluated for further voice session support.
- Upon receiving an incoming call from the telephone switching network via the switching
input line 5605, if not in use, thecontrol processing circuit 5609 first attempts to identify the type of call incoming. If it is a facsimile or modem transmission destined for the host device, thecontrol processing circuit 5609 directs theswitching circuit 5607 to interconnect theline 5605 with a modem/fax processing circuit 5633. - If the incoming call on the
line 5605 constitutes a voice packet transmission destined for thetelephone 5530, thecontrol processing circuit 5609 and switchingcircuit 5607 deliver a busy signal onto theline 5603, and deliver a ringing message packet along theline 5605. If theswitching circuit 5607 detects a pickup on theline 5603, a connect message packet is delivered onto theline 5605 to the sending device. Thereafter, the voice stream delivered via thephone input line 5603 is converted as described above into a voice packet form for delivery via the switching input line 5606 to the source device. Similarly, the voice packets received along the line 5606 are processed by the conversion circuitry (as described above) and delivered onto thephone input line 5603. - If, however, the call designates a different destination device than the device attached to the
phone input line 5603, the voice packets are relayed by the host device for further routing, e.g., thecomputer 5515 receives the voice packets to route them onto thebackbone LAN 5503. - Alternately, if the incoming call on the switching
input line 5605 is a voice stream call (e.g., a conventional phone call), thecontrol processing device 5609 will direct the switching device to deliver a ring signal onto theline 5603. Upon detecting a pickup on theline 5603, the switching circuit is directed to interconnect thelines - In addition, modem and facsimile transmissions originating from the host device (such as the
computer 5515 ofFIG. 55 a) are received and processed by the modem/fax processing circuit 5633 for routing through theswitching circuit 5607 to the telephone switching network via theline 5605. - Voice messages delivered to the user are stored in a digital form by the host device. The
control processing circuit 5609 interacts to load the voice messages into abuffer 5627 as they are needed. Thecontrol processing circuit 5609 also directs the D/A conversion circuit 5625 to begin converting the digital messages into a voice stream for delivery via thebuffer 5629 and theswitching circuit 5607 to either theline - With exception to the modem/
fax processing circuit 5633, the telephone access device 5519 (FIG. 55 a) also utilizes the circuitry shown inFIG. 56 a, and has the same functionality described above in relation thereto. The telephone access device 5519 (FIG. 55 a) is configured to communicate on thebackbone LAN 5503, and to take on the functionality provided by thecomputer 5515 as described above. - Similarly, the same circuitry and functionality are contained within the
telephone access device 5577. However, thedevice 5577 is shown having no telephone connected thereto. In such configurations, thetelephone access device 5577 acts only as an access device from thetelephone line 5579 into and out of the remote premises. - The
computer 5517 also utilizes a computer card 5601 (FIG. 56 a). However, in the configuration illustrated, thetelephone 5531 is a two-line phone with a first line being connected to an outside telephone line, theline 5537, and the second being connected to thecard computer 5601. When the user desires to place an outside call, the first line is chosen and vice versa. In this configuration theline 5605 of thecard 5601 is not, and need not be, connected to anything. Through setup, the host device (the computer 5517) takes the missing switching network link into consideration when determining routing options to select, offer, etc. - Each of the
access devices computer card 5601. In particular, with thecard 5601, theaccess device 5507 provides communication pathways via: 1) thetelephone line 5539; 2) the wireless network via theaccess device 5505; 3) themobile terminal 5521 via a first transceiver serving the wireless network; and 4) thewireless phone 5527 via a dedicated, second transceiver. - The
access device 5509 provides pathways via thetelephone line 5541 and a transceiver servicing the wireless network. Theaccess device 5511 illustrates that atelephone 5533 can be attached to thecard 5601 to provide access through the wireless network to any local or remote device, without having direct access to the telephone switching network. - Furthermore, the
access device 5533 illustrates that thecomputer card 5601 need not be connected to either a telephone or a telephone switching network to provide operational functionality. In particular, instead of connecting an outside telephone line, the access device 5553 delivers voice streams captured by and received from the mobile terminal 5559 to the conversion circuitry of thecomputer card 5601 for digitizing (by the A/D conversion circuit 5621), storing and routing as voice packets back to the premises, for example. Voice packets received from the mobile terminal 5555 (which contains its own conversion circuitry) receive the same storage and routing treatment without conversion assistance. -
FIG. 56 b illustrates an alternate embodiment of the conversion circuitry ofFIG. 56 a wherein instead of using an analog subtraction process to separate outgoing voice signals from the combined incoming and outgoing signals, a digital subtraction process is used (at a subtraction circuit 5653). In addition, the use of adelay element 5651 is shown to compensate for the D/A and A/D conversion time pathway viacircuits -
FIG. 57 is an illustration of the back of thetelephone 5525 ofFIG. 55 a as built in accordance with the present invention. Unlike theconventional telephones FIG. 55 a), thetelephone 5525 is configured with built in conversion circuitry. In particular, thetelephone 5525 contains aphone line jack 5701 for connecting to an available outside telephone line, although in need not be connected to operate (as illustrated inFIG. 55 a). Thepower adapter jack 5703 provides power to thetelephone 5525 via a typical A/C to D/C converter. Although not shown, an alternate embodiment of thetelephone 5525 also utilizes internal, rechargeable battery power. Lastly, thetelephone 5525 is configured to receive PCMCIA cards intoslots 5705. For example, thePCMCIA card 5707 is a radio transceiver card which provides wireless access from thetelephone 5525 to the access device 5509 (FIG. 55 a). Alternately or in addition, an ethernet PCMCIA card may be added for direct ethernet connectivity to, for example, the backbone LAN 5503 (FIG. 55 a). - The
telephone 5525 provides a semi-stationary source for placing phone calls inside or outside of the premises without requiring new telephone line wiring. It also avoids incurring charges associated with other conventional mobile phone services. -
FIG. 58 is a schematic block diagram which illustrates the implementation of one embodiment of the conversion circuitry within thetelephone 5525 ofFIGS. 55 and 57 . In particular, acontrol processing circuit 5801 functions as described above in reference toFIG. 56 a with one significant difference—there is no need for a subtraction circuit. This is because thecontrol processing circuit 5801 already has access to the outgoing voice stream separate from that incoming. - Incoming voice streams via the jack 5701 (
FIG. 57 ) are delivered (along with outgoing voice streams captured by a microphone 5805) to aspeaker 5807 and to the other calling party. A microphone/phone processing circuit 5809 manages the call processing and delivers the outgoing voice stream per direction from acontrol processing circuit 5801. - To support voice packet communication, the
processing circuit 5801 directs an A/D conversion circuit 5817 to process the outgoing voice stream. The resultant voice data is stored in anoutput buffer 5819 in a voice packet form. By attaching a PCMCIA card or cards (seeFIG. 57 ) to theoutput buffer 5819, thecontrol processing circuit 5801 can direct the delivery of the voice packets onto an ethernet LAN, telephone switching network, wireless network, etc., depending on the nature of the PCMCIA card(s) installed. Similarly, by attaching aninput line 5811 to a PCMCIA card or cards (seeFIG. 57 ) incoming voice packets can be delivered via a media defined by the attached PCMCIA card(s). Although not shown, thecontrol processing circuit 5801 also maintains a direct interface with the attached PCMCIA cards to provide appropriate routing, call setup and control as proves necessary. - In addition, after queuing group voice data contained in incoming voice packets in a
queue time buffer 5813, a D/A conversion circuit 5815 begins converting the queued data into a voice stream form. For half duplex communication, the conversion is delayed until any pending group of outgoing communication has finished. For full duplex (2-way) communication, the incoming voice stream is added to outgoing voice signals from themicrophone 5805 for delivery to thespeaker 5807. -
FIG. 59 is a block diagram illustrating the packet processing functionality of the access devices illustrated inFIG. 55 a. At ablock 5901, an access device waits in an idle state for receipt of any type of communication packet. Upon receipt of a communication packet, the access device examines an identifier field within the packet to determine the packet type. If the packet is determined to be a call route request packet as indicated at anevent block 5903, the access device begins an attempt to identify potential phone call pathways. Alternatively, if the packet is a call setup packet as indicated at anevent block 5905, the access device either attempts to set up the call (if directly connected to the destination and setup services are needed) or forwards the setup packet toward the destination. Otherwise, if the access device receives any other type of communication packet at anevent block 5911, other routines are executed at ablock 5913 to appropriately service the received packet. - More specifically, a call request packet contains an identifier field—for storing a packet type indicator, a destination field—for storing a destination phone number, a base cost field—for indicating the routing cost incurred by the calling device to reach a current access device, and an internal call routing field—for storing the lowest cost routing pathway (along with its cost), if any, which does not use an outgoing telephone line, and an external call routing field—for storing the lowest cost routing pathway (along with its cost), if any, utilizing an outgoing telephone line.
- Upon receiving a call setup request packet as indicated by the
event block 5903, the access device first attempts to find a lowest cost external routing pathway for the call. At ablock 5917, the access device consults its routing table to identify the lowest cost direct or upstream access to an available outgoing telephone line. If no access is found, the access device branches to begin internal call route processing. However, if an outgoing telephone line is identified, the access device determines whether to replace an external routing pathway stored in the external call routing field at ablock 5919. - In particular, the access device compares the cost of the currently stored external routing pathway with the cost of the access device's own lowest cost external pathway at the
block 5919. If the access device has identified a lower cost external pathway, the access device replaces the current external call routing field entry (if any) with the lower cost pathway along with the associated cost at a block 5921, and branches to ablock 5923 to begin internal call route processing. However, if no phone line access is available or its cost is not lower, the access device branches immediately branches to theblock 5923 for internal call route processing. - The term “cost” being compared at the
block 5919 consists of the sum of the routing cost involved in routing a packet from the source (the call initiator) to the current access point and the routing cost involved in routing a packet from the current access point to the access device which provides direct access to the available outgoing telephone line. Routing cost not only takes into account actual costs that may be incurred, but also takes into account the media, e.g., its bandwidth, reliability, time delays and traffic levels. - After considering the external routing pathway, the access device begins internal routing pathway processing at the
block 5923. Specifically, at theblock 5923, the access device determines whether the internal routing field contains an entry. If the field is empty, the access device attempts to identify a routing table entry for the telephone number of the destination device at ablock 5925. If a routing table entry is found, at ablock 5927 the access device inserts the table entry along with the overall cost from the source to destination into the internal routing field. Thereafter, the access device branches to ablock 5929 to begin either root processing or further forwarding. The access device also branches to theblock 5929 if an entry is found in the internal routing pathway field at theblock 5923 or a routing table entry is not found at theblock 5925. - At the
block 5929, the access device considers whether it is a root device in the spanning tree. If it is not a root device, the access device increments the base cost field entry by the cost of reaching the next device in the pathway toward the root access device (as indicated by the cost entry in the routing table), routes the updated route request packet to the next device in the pathway toward the root, and returns to the idle state at theblock 5901. Otherwise, if the access device is a root device, the access device converts the call route request packet to a call reply packet (by changing the packet type indicator) at ablock 5933, and routes the reply packet back toward the source. - Upon receipt of the call reply packet, among other processing illustrated in reference to
FIG. 60 below, the source device (the “calling device”) is offered the internal and external call pathway options (if available) for establishing the call. The source device may offer the user the pathway options, or, if so programmed, automatically select the most appropriate pathway for placing the call. Having selected a pathway from the offered options, the source device generates a call setup packet and routes it toward the destination. - Upon receiving a call setup packet as indicated at an
event block 5905, the access device responds at ablock 5937 by first considering whether the access device has a direct link to: 1) the destination device—either a hardwired or wireless link; or 2) a telephone line which is to be used in the communication pathway to or toward to destination device. If neither direct link exists, the access device routes the call setup packet toward the destination per routing table specification at ablock 5939, and, thereafter, returns to the idle state at theblock 5901. - Otherwise, if either or both direct links, the access device determines whether further processing assistance is required at a
block 5941. In particular, if the access device identifies that the destination device is directly connected thereto, the access device consults its routing table to determine if the destination device requires call setup assistance. When the destination device is available and not in use, setup assistance by the access devices involves: 1) the dialing of destination devices connected via a telephone line of a telephone switching network to the access device; 2) the delivery of a ring signal to conventional destination devices connected directly to the access device via hardwiring, for example; 3) sending a ringing message back toward the source device; 4) detecting a pickup at the destination device; and 5) sending a pickup message toward the source device so that the call can proceed. If the destination device is busy (“in use”), the access device sends a busy message toward the source device. - If setup assistance is not needed, the access device merely forwards the call setup packet to the destination device. Upon receipt, if not busy, the destination device sends a ringing message toward the destination, signals the user to answer the incoming call, and responds to a pickup by delivering a pickup message toward the source device. Otherwise, if busy, the destination device sends a busy message through the spanning tree network toward the source device.
- Upon receipt of a pickup message, the source device begins to capture audio signals which are routed toward the destination. Similarly, upon pickup, the destination device begins capturing audio signals which are routed toward the source device.
- In addition, if captured audio signals are to be routed through the wireless spanning tree network and/or through the associated hardwired networks within the communication network, the audio signals must first be converted to a packetized form (i.e., a “call voice packet” form) and then reconstructed for playback. For example, if an access device directly receives captured audio signals but must route the signals through the network, the access device converts the audio signals into voice packets, screens out all audio signals falling below a predetermined threshold level (to avoid the wasted bandwidth associated with the transmission of interleaving background noise), and forwards the call voice packets through the network. Similarly, if it has the capability of performing the packetization processing, a source or destination device connected directly to a wired or wireless network will generate call voice packets for delivery through the network.
- Upon receiving a call voice packet at the
block 5901 as represented by theblock 5907, the access device first determines whether it has a direct link to the destination of the voice packet at ablock 5937. If so, the access device considers whether call processing assistance is needed at ablock 5941. If needed, the access device performs the processing assistance at theblock 5943. In particular, the processing assistance in this situation consists of converting the call voice packets back into an audio signal form (analog form) for delivery to the destination of the voice packets. In addition, as described in more detail below, the access device delays the audio signals for a predetermined queuing time before delivery to promote continuous delivery of the overall segment of captured voice. - If no direct link is available at the
block 5937 or no call processing assistance is needed at theblock 5941, the call voice packets are routed toward the destination at theblock 5939. Thereafter, the access device reenters the idle processing state at theblock 5901. -
FIG. 60 is a flow diagram illustrating the functionality of a source device in the setup of a voice session. The flow diagram also applies to an access device assisting a source device in the setup of a voice session whenever such assistance is needed. - Specifically, when a user attempts to initiate a voice session to a destination device, the source device (or assisting access device where applicable) responds by first determining whether it has direct telephone line access to an outside public telephone switching network. Such access may be via a telephone line, through a direct wireless telephone link to a telephone base unit having telephone line access, or through a cellular radio.
- If direct telephone line access routing exists, the source device offers the route(s) along with associated cost(s) to the user (or user software) for selection at a
block 6003. If such a route is selected, the source device branches to conventional call setup routines as indicated at ablock 6007. - Alternately, if direct telephone line access is rejected or unavailable, the source device generates a call route request packet at a
block 6009. Thereafter, the source device routes the request packet toward the root device of the spanning tree at theblock 6011, and awaits a reply packet at ablock 6013. - As described in relation to
FIG. 59 above in more detail, as the call route request packet is routed toward a root device of the spanning tree, each intermediate access device along the route selectively supplements the route request packet with lowest cost routing information. Upon receipt of the packet, the root device also selectively supplements the call route request packet, converts the packet into a reply packet, and routes the reply packet back toward the source device. - Upon receiving the reply packet, at a
block 6015 the source device examines the reply packet for voice session routing options. If no session options are available, the attempt is aborted at ablock 6021. If routing options are indicated, they are offered along with their associated costs at ablock 6017. If the user of the source device (or associated software) rejects the offered routes, the voice session is aborted as indicated at theblock 6021. If an offered route is accepted, the source device branches to perform call setup at theblock 6007. -
FIG. 61 is a flow diagram illustrating the functionality of the source device (or assisting access device) when performing call setup. The source device begins the setup functionality at ablock 6101. If the source device intends to deliver voice mail, as determined at ablock 6103, the source device prompts for the voice message and captures the message at ablock 6105. Once the voice message is captured, the source device waits at ablock 6107 for a predetermined time period before attempting to deliver the captured voice message. During the wait, the source device may have queued up other voice messages such that they may all be processed in a time and money saving batch mode. In addition, while waiting, other voice sessions might be conducted, and, during such time, delivery of the captured and queued voice mail takes place. Thus, in effect, the delivery of voice mail messages can be delayed to optimize communication resources. In an alternate embodiment, voice mail is treated no differently than any other voice session. In addition, if the voice message cannot be delivered because the destination device is busy or otherwise unavailable, delivery is periodically reattempted. - Thus, to deliver voice mail or establish a real-time voice session, at a
block 6109, the source device generates and routes toward the destination device a call setup packet at ablock 6109, with the pathway for the routing having been defined by one of the routing options previously offered and selected. At ablock 6111, the source device waits for a response regarding the attempted setup. If a busy message is received, the source device concludes that the path is currently unavailable at ablock 6113, and delivers a busy signal to the user of the source device at ablock 6115. If the busy message results from a busy destination device, the source device concludes that no other pathway need be considered at ablock 6117, and ends the session setup attempt at ablock 6119. However, if the busy message indicates a busy pathway, the source device considers whether other pathways are available at theblock 6117 through analysis of the previously received reply packet. If other pathways exist, the source device offers such other routes at theblock 6130 to the user. If selected, the source device repeats the processing of the blocks 6103-6117 until either no other voice session paths are available, or the destination device or assisting access device responds with a ring message packet. - In particular, upon receiving a setup request packet, an available destination device (or assisting access device) responds by delivering a ring signal to the user, and by generating and routing a ring message packet toward the source device. Upon call pickup, the destination device (or assisting access device) generates and routes a connect packet toward the source device.
- Thus, at the
block 6113, when the ring message packet is received, the source device responds in one embodiment at ablock 6121 by attempting to adjust the queuing time of the audio information received. This is accomplished by sending a series of round trip test packets which are sent from the source to the destination and back while ringing is taking place so as to identify the approximate delay time of the network. The overall queue time consists of a worst case relay time plus a tolerance factor generated through statistical analysis of the mean and median of the test packet round trip times. However, in an alternate embodiment, a predetermined default queue time is selected, and no test packets are delivered. - At a
block 6123, the source device delivers a ringing signal to its user, indicating that the destination device is ringing. Thereafter, if the user of the source device happens to hang up, the voice session attempt ends at ablock 6127. Otherwise, the source device continues to indicate ringing at the destination device until a connect packet is received. Upon receipt of the connect packet, the source device concludes that the destination device has answered the call at ablock 6128 and branches to begin voice session processing at ablock 6129, as further described below in reference toFIG. 62 . -
FIG. 62 is a flow diagram illustrating ongoing voice session processing performed by a source device (or its assisting access device if needed) and destination device (or its assisting access device if needed). - Once a connect message is generated, the destination device (or its assisting access device) enters the
idle state 6201. Upon receiving the connect message, the source device also enters the idle state at ablock 6201. - Any device waiting in an idle state at the
block 6201 responds to several types of ongoing call processing events. If a voice packet is received as indicated by ablock 6203, the device queues up the incoming digital voice data contained within the voice packet, and thereafter returns to the idle state. - If the incoming queue contains queued up information, as indicated by a
block 6211, the device must consider whether full duplex operation is possible or not. To do so, at ablock 6213, the device first determines whether a potential conflict with outgoing voice information might occur. If no outgoing transmission is in progress, the device evaluates whether the queuing time is greater than a predetermined threshold value at ablock 6215. If it is greater, only half duplex communication is desired because the delay between the generation and playback of the incoming voice information in queue is so long that it might be detectable by the listener. In such circumstances, half duplex communication is preferred, therefore, at ablock 6217, an indication is provided to the user that half duplex communication being utilized, and the device reenters the idle state, to again vector through theevent block 6211 andblocks - If no outgoing transmission is taking place or the queue time is less than the predetermined queuing threshold, the device begins playback of the queued, digital voice information through D/A conversion at a
block 6219. If voice capture is detected, as indicated by ablock 6221, an A/D conversion, packetization and queuing process takes place at ablock 6223. Thereafter, the device reenters the idle state at theblock 6201, only to vector on an “outgoing queue not empty” event indicated by ablock 6225. At theblock 6225, the device vectors to ablock 6227 to send a queued, outgoing voice/audio packet to the other device involved in the voice session exchange. After sending the voice packet, the device reenters the idle state at theblock 6201. - If a local hang is detected, as indicated at an
event block 6231, the device sends a remote hangup packet to the other participating device at ablock 6233, and ends the voice session at ablock 6239. If a remote hangup packet is detected by the device while in the idle state, as indicated by anevent block 6235, the device delivers a click and dial tone to the user at ablock 6237, and also ends the voice session at theblock 6239. - Finally, if an error in the queuing time is detected, as indicated by an
event block 6241, the queuing time is adjusted at ablock 6243 before reentering the idle state at theblock 6201. In particular, if the selected “preset” queuing time for storing incoming signals proves to be too short, the queue time is adjusted up to avoid clicking sounds associated with gaps in incoming voice signals. However, the adjusted queuing time is only implemented with future groups of voice packets, i.e., not the current group. -
FIG. 63 is a diagram which illustrates further application of the present invention in an embodiment which transparently utilizes internet connectivity to support low-cost voice sessions. In particular, as with convention internet services,personal computers internet providers computers telephone lines - The
internet providers block 6315. The internet functions as a distributed information source which can be accessed by either of thecomputers computers - Beyond the typical internet functionality, the
computers card 5601 ofFIG. 56 a so that they can also handle voice sessioning. In addition, a two-line telephone 6321 is also provided with a first line attached to the computer card and a second line to atelephone line 6325. Via thetelephone line 6325, which attaches to a conventional telephone switching network (not shown), thetelephone 6321 provides typical dialing functionality outside of the internet network. On the first line, thetelephone 6321 interfaces with the computer card in thecomputer 6301 to place phone calls through the internet. - Similarly, a single-
line telephone 6323 is also attached to computer card such as thecard 5601 ofFIG. 56 a. Through interfacing with the computer card within thecomputer 6303, thetelephone 6323 can place calls either through a conventional telephone network via atelephone line 6327 or through the internet network via thetelephone line 6311. - More specifically, to communicate from the
telephone 6321 to thetelephone 6323, the user first picks up thetelephone 6321. If the user selects the first line, thetelephone 6321 receives a dial tone and further conventional call processing via thetelephone line 6325. For example, the user of thetelephone 6321 could dial the telephone number of thetelephone 6323 in a conventional manner. Thecomputer 6303 would detect the incoming call ringing signals and directly interconnect thetelephone 6323 with thetelephone line 6327. Subsequent call processing would be left to that provided via the conventional phone service. - Alternatively, if the user of the
telephone 6321 selects the first line, thecomputer 6301 delivers (via its computer card) an internet dial message. The message prompts for the normal telephone number of the destination device (i.e., the telephone 6323). In response, thecomputer 6301 attempts to identify (from the telephone number entered) an internet address which is used for routing information through the internet network. To perform this task, thecomputer 6301 uses an internet/telephone number, cross-reference database which contains various telephone numbers and associates therewith corresponding internet addresses. - If the
computer 6301 fails to identify the corresponding internet address, a phone message prompts for entry of that internet address via thecomputer 6301 into the cross-reference database. Upon successful identification of the internet address, thecomputer 6301 communicates via the internet network (i.e., theprovider 6305,routing network 6315 and the provider 6307) and to the computer 6303 a message indicating the desire to establish a voice session (hereafter a “connection request”). - If the
computer 6303 is not connected to the internet provider 6307 (i.e., “offline”) at the time of the connection request, thecomputer 6301 will receive no response and timeout. Thecomputer 6301 then sends a voice message to thetelephone 6321 indicating that thetelephone 6323 is offline. Otherwise, if thecomputer 6303 is online, the computer receives the connection request and checks to see if thetelephone 6323 is currently available. - If the
telephone 6323 is currently engaged in another call, thecomputer 6303 responds by delivering a busy message through the internet network to thecomputer 6301. Upon receipt of the busy message, thecomputer 6301 delivers a busy tone signal to thetelephone 6321. Alternatively, if thetelephone 6323 is not engaged, thecomputer 6303 responds to the connection request by delivering a ring signal to thetelephone 6323. Thecomputer 6303 also responds by delivering a ringing message through the internet network to thecomputer 6301. Upon receipt of the ringing message, thecomputer 6301 delivers a ring signal to thetelephone 6321. - If the user hangs up the
telephone 6321 before the call is connected, thecomputer 6301 detects the hang and sends a hang up message to thecomputer 6303. In response, thecomputer 6303 aborts the delivery of the ringing signals to thetelephone 6323, ending the voice session setup attempt. - If the user of the
telephone 6323 picks up the telephone, thecomputer 6303 responds by sending a message to thecomputer 6301 via the internet network indicating that a connection has been established. Thereafter, thecomputer 6303 begins compressing and packetizing voice signals captured by thetelephone 6323 for delivery to thetelephone 6321 via the internet network. Similarly, upon receiving the message indicating that a connection has been established, thecomputer 6301 also begins compressing and packetizing voice signals captured by thetelephone 6321. - Both of the
computers computers telephones - During the course of the ongoing voice session, if a hang up is detected by one of the
computers - Calls originating from the
telephone 6323 to thetelephone 6321 operate nearly the same except during initial call route selection. Upon a user's pickup of thetelephone 6323 to place a call, thecomputer 6303 responds by delivering a dial tone to thetelephone 6323. Thecomputer 6303 then waits for the user entry of a telephone number (in this case the number of the telephone 6321). Upon receipt of the telephone number, thecomputer 6323 checks for an internet address in its cross reference database. If an internet address is found, the computer 6303 (via its computer card) delivers a voice message to thetelephone 6323 prompting the user to select (via a keypad on the telephone 6323) either internet or telephone switching system routing. If the user selects telephone switching system routing, thecomputer 6303 accesses thetelephone line 6331, awaits a dial tone, dials the entered number, and, thereafter, connects thetelephone 6323 directly to thetelephone line 6327. At that point, thetelephone 6323 interacts with basic call model processing associated with the telephone switching network. - Otherwise, if the user selects internet routing, the
computer 6303 begins the internet connect processing described above in relation to initiation of an internet call from thetelephone 6321 to thetelephone 6323. - Thus, voice sessions between the
telephones computers - In addition, the
computers - In addition, a computer need not be present to provide the end user with voice session transport via internet. For example, as illustrated, in one embodiment, a
conventional telephone 6331 is attached to a conventional telephone switching network via atelephone line 6335. Thus, thetelephone 6331 can establish and maintain voice sessions through conventional means with, for example, thetelephone 6323 via thetelephone line 6327. - Similarly, to place a call from the
telephone 6323 to thetelephone 6331, conventional telephone switching network interconnection may be established via thetelephone lines telephone 6323 may also place a call to thetelephone 6331 via the internet network. Specifically, upon detecting pickup, thecomputer 6303 delivers a dial tone to thetelephone 6323. Upon detecting the dialed number of thetelephone 6331, thecomputer 6303 consults its cross-reference database to attempt to identify an internet address. If an exact internet address cannot be found, thecomputer 6303 uses the country code/area code of the entered phone number to attempt to locate a call server somewhere near the telephone 6331 (so as to minimize telephone switching network charges). In particular, thecomputer 6303 uses the entered country code/area code to identify the internet address of anaccess device 6333 maintained by an internet provider which, for example, happens to be in the same local calling area as the telephone 6331 (although remotely located from the telephone 6331). Thecomputer 6307 then sends a connect request containing the telephone number of thetelephone 6331 to the internet address of theaccess device 6333. In response, theaccess device 6333 responds by gaining access to the conventional telephone switching network, dialing the number of thetelephone 6331 and sending appropriate messages to thecomputer 6303 regarding the status of the call. - Particularly, if the
telephone 6331 is engaged, theaccess device 6333 releases the telephone line and sends a busy message to thecomputer 6303. In response, thecomputer 6303 delivers a busy signal to thetelephone 6323. Similarly, if the access device detects that thetelephone 6331 is ringing, it awaits pickup and delivers a ringing message via internet to thecomputer 6303. Thecomputer 6303 responds by delivering a ring signal to thetelephone 6323. - If the
telephone 6331 is answered, theaccess device 6333 indicates such an event by sending a connect established message to thecomputer 6303 via internet. Thereafter, the access device begins packetizing voice signals from thetelephone 6331. The access device sends resulting voice packets through the internet network to thecomputer 6303. Thecomputer 6303 also begins packetizing voice captured by thetelephone 6323 and sending the resulting voice packets through the internet network to theaccess device 6333. - Both the
access device 6333 and thecomputer 6303 attempt to filter periods of non-voice time periods. Similarly, both queue up incoming voice packets to take into consideration packet delivery delays within the internet network. Thus, as can be appreciated, theaccess device 6333 comprises rather conventional internet server functionality having at least one available outside telephone line through which call processing can be maintained. - The
access device 6333 further comprises call processing circuitry such as is shown inFIG. 56 a for adapting voice information for transport between internet network and the telephone switching network. Such circuit functionality is also described in more detail in reference toFIG. 56 a above. - Moreover, the functionality mentioned in reference to the configuration of
FIG. 63 is merely a further embodiment of the flow diagrams of the previousFIGS. 59-62 . - Thus, the present invention has been described herein with reference to particular embodiments for particular applications. However, it will be apparent to one skilled in the art having read the foregoing that various modifications, variations and applications of this communication system according to the present invention are possible and is intended to include all those which are covered by the appended claims.
Claims (95)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/840,276 US20110007733A1 (en) | 1995-10-05 | 2010-07-20 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/539,817 US5726984A (en) | 1989-01-31 | 1995-10-05 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US09/037,535 US6389010B1 (en) | 1995-10-05 | 1998-03-10 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/141,506 US6850510B2 (en) | 1995-10-05 | 2002-05-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,883 US7760703B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/840,276 US20110007733A1 (en) | 1995-10-05 | 2010-07-20 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/783,883 Continuation US7760703B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
Publications (1)
Publication Number | Publication Date |
---|---|
US20110007733A1 true US20110007733A1 (en) | 2011-01-13 |
Family
ID=24152774
Family Applications (41)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/037,535 Expired - Lifetime US6389010B1 (en) | 1990-01-18 | 1998-03-10 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/141,506 Expired - Lifetime US6850510B2 (en) | 1990-01-18 | 2002-05-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/682,591 Expired - Fee Related US7366151B2 (en) | 1990-01-18 | 2003-10-09 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/701,865 Abandoned US20040114567A1 (en) | 1995-10-05 | 2003-11-05 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/706,425 Abandoned US20040145775A1 (en) | 1995-10-05 | 2003-11-12 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,322 Expired - Fee Related US8467376B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,167 Expired - Fee Related US7580384B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/759,969 Expired - Fee Related US7697467B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,035 Expired - Fee Related US8149825B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,057 Expired - Fee Related US7633934B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,873 Expired - Fee Related US7933252B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,375 Expired - Fee Related US7460507B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,437 Abandoned US20040165573A1 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/784,005 Expired - Fee Related US6961312B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,883 Expired - Fee Related US7760703B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,477 Expired - Fee Related US7646743B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,587 Expired - Fee Related US8238264B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communication among wireless terminals and telephones |
US10/783,572 Expired - Fee Related US7920553B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,888 Expired - Fee Related US7586861B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,894 Abandoned US20040160913A1 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/801,472 Expired - Fee Related US7715375B2 (en) | 1995-10-05 | 2004-03-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/822,447 Expired - Fee Related US7688811B2 (en) | 1995-10-05 | 2004-04-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/822,462 Expired - Fee Related US7142535B2 (en) | 1995-10-05 | 2004-04-12 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/839,373 Expired - Fee Related US8018907B2 (en) | 1995-10-05 | 2004-05-05 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US11/183,704 Expired - Fee Related US7912016B2 (en) | 1995-10-05 | 2005-07-18 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US11/604,976 Expired - Fee Related US7586907B2 (en) | 1995-10-05 | 2006-11-28 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/048,017 Expired - Fee Related US7916706B2 (en) | 1995-10-05 | 2008-03-13 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/141,505 Expired - Fee Related US8228879B2 (en) | 1995-10-05 | 2008-06-18 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/251,208 Expired - Fee Related US7899007B2 (en) | 1995-10-05 | 2008-10-14 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/260,850 Expired - Fee Related US8139749B2 (en) | 1995-10-05 | 2008-10-29 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/547,348 Expired - Fee Related US8194595B2 (en) | 1995-10-05 | 2009-08-25 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/555,680 Expired - Fee Related US7768951B2 (en) | 1995-10-05 | 2009-09-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/605,903 Abandoned US20100118864A1 (en) | 1995-10-05 | 2009-10-26 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
US12/638,386 Expired - Fee Related US7848316B2 (en) | 1995-10-05 | 2009-12-15 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/686,195 Expired - Fee Related US7936713B2 (en) | 1995-10-05 | 2010-01-12 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/727,825 Expired - Fee Related US7894423B2 (en) | 1995-10-05 | 2010-03-19 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/749,320 Abandoned US20100232323A1 (en) | 1995-10-05 | 2010-03-29 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/759,501 Abandoned US20100260063A1 (en) | 1995-10-05 | 2010-04-13 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
US12/777,436 Expired - Fee Related US7912043B2 (en) | 1995-10-05 | 2010-05-11 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/840,276 Abandoned US20110007733A1 (en) | 1995-10-05 | 2010-07-20 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
US13/267,150 Abandoned US20120269186A1 (en) | 1995-10-05 | 2011-10-06 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
Family Applications Before (39)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/037,535 Expired - Lifetime US6389010B1 (en) | 1990-01-18 | 1998-03-10 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/141,506 Expired - Lifetime US6850510B2 (en) | 1990-01-18 | 2002-05-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/682,591 Expired - Fee Related US7366151B2 (en) | 1990-01-18 | 2003-10-09 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/701,865 Abandoned US20040114567A1 (en) | 1995-10-05 | 2003-11-05 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/706,425 Abandoned US20040145775A1 (en) | 1995-10-05 | 2003-11-12 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,322 Expired - Fee Related US8467376B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,167 Expired - Fee Related US7580384B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/759,969 Expired - Fee Related US7697467B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,035 Expired - Fee Related US8149825B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/760,057 Expired - Fee Related US7633934B2 (en) | 1995-10-05 | 2004-01-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,873 Expired - Fee Related US7933252B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,375 Expired - Fee Related US7460507B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,437 Abandoned US20040165573A1 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/784,005 Expired - Fee Related US6961312B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,883 Expired - Fee Related US7760703B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,477 Expired - Fee Related US7646743B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,587 Expired - Fee Related US8238264B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communication among wireless terminals and telephones |
US10/783,572 Expired - Fee Related US7920553B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,888 Expired - Fee Related US7586861B2 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/783,894 Abandoned US20040160913A1 (en) | 1995-10-05 | 2004-02-20 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/801,472 Expired - Fee Related US7715375B2 (en) | 1995-10-05 | 2004-03-16 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/822,447 Expired - Fee Related US7688811B2 (en) | 1995-10-05 | 2004-04-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/822,462 Expired - Fee Related US7142535B2 (en) | 1995-10-05 | 2004-04-12 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US10/839,373 Expired - Fee Related US8018907B2 (en) | 1995-10-05 | 2004-05-05 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US11/183,704 Expired - Fee Related US7912016B2 (en) | 1995-10-05 | 2005-07-18 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US11/604,976 Expired - Fee Related US7586907B2 (en) | 1995-10-05 | 2006-11-28 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/048,017 Expired - Fee Related US7916706B2 (en) | 1995-10-05 | 2008-03-13 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/141,505 Expired - Fee Related US8228879B2 (en) | 1995-10-05 | 2008-06-18 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/251,208 Expired - Fee Related US7899007B2 (en) | 1995-10-05 | 2008-10-14 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/260,850 Expired - Fee Related US8139749B2 (en) | 1995-10-05 | 2008-10-29 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/547,348 Expired - Fee Related US8194595B2 (en) | 1995-10-05 | 2009-08-25 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/555,680 Expired - Fee Related US7768951B2 (en) | 1995-10-05 | 2009-09-08 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/605,903 Abandoned US20100118864A1 (en) | 1995-10-05 | 2009-10-26 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
US12/638,386 Expired - Fee Related US7848316B2 (en) | 1995-10-05 | 2009-12-15 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/686,195 Expired - Fee Related US7936713B2 (en) | 1995-10-05 | 2010-01-12 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/727,825 Expired - Fee Related US7894423B2 (en) | 1995-10-05 | 2010-03-19 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/749,320 Abandoned US20100232323A1 (en) | 1995-10-05 | 2010-03-29 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US12/759,501 Abandoned US20100260063A1 (en) | 1995-10-05 | 2010-04-13 | Hierarchical Data Collection Network Supporting Packetized Voice Communications Among Wireless Terminals And Telephones |
US12/777,436 Expired - Fee Related US7912043B2 (en) | 1995-10-05 | 2010-05-11 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/267,150 Abandoned US20120269186A1 (en) | 1995-10-05 | 2011-10-06 | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
Country Status (1)
Country | Link |
---|---|
US (41) | US6389010B1 (en) |
Cited By (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100291949A1 (en) * | 2007-12-20 | 2010-11-18 | Mobileaccess Networks Ltd. | Extending outdoor location based services and applications into enclosed areas |
US20110243189A1 (en) * | 2010-03-31 | 2011-10-06 | Tymes Laroy Wayne | Frequency alignment for narrow band radios |
WO2012119029A2 (en) * | 2011-03-02 | 2012-09-07 | Blackbird Technology Holdings, Inc. | Method and apparatus for power autoscaling in a resource-constrained network |
US8326338B1 (en) * | 2011-03-29 | 2012-12-04 | OnAir3G Holdings Ltd. | Synthetic radio channel utilizing mobile telephone networks and VOIP |
US8532492B2 (en) | 2009-02-03 | 2013-09-10 | Corning Cable Systems Llc | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US8548330B2 (en) | 2009-07-31 | 2013-10-01 | Corning Cable Systems Llc | Sectorization in distributed antenna systems, and related components and methods |
US8622312B2 (en) | 2010-11-16 | 2014-01-07 | Blackbird Technology Holdings, Inc. | Method and apparatus for interfacing with a smartcard |
US8639121B2 (en) | 2009-11-13 | 2014-01-28 | Corning Cable Systems Llc | Radio-over-fiber (RoF) system for protocol-independent wired and/or wireless communication |
US8718478B2 (en) | 2007-10-12 | 2014-05-06 | Corning Cable Systems Llc | Hybrid wireless/wired RoF transponder and hybrid RoF communication system using same |
US8718551B2 (en) | 2010-10-12 | 2014-05-06 | Blackbird Technology Holdings, Inc. | Method and apparatus for a multi-band, multi-mode smartcard |
US8831428B2 (en) | 2010-02-15 | 2014-09-09 | Corning Optical Communications LLC | Dynamic cell bonding (DCB) for radio-over-fiber (RoF)-based networks and communication systems and related methods |
US8867919B2 (en) | 2007-07-24 | 2014-10-21 | Corning Cable Systems Llc | Multi-port accumulator for radio-over-fiber (RoF) wireless picocellular systems |
US8873585B2 (en) | 2006-12-19 | 2014-10-28 | Corning Optical Communications Wireless Ltd | Distributed antenna system for MIMO technologies |
US8897215B2 (en) | 2009-02-08 | 2014-11-25 | Corning Optical Communications Wireless Ltd | Communication system using cables carrying ethernet signals |
US8909865B2 (en) | 2011-02-15 | 2014-12-09 | Blackbird Technology Holdings, Inc. | Method and apparatus for plug and play, networkable ISO 18000-7 connectivity |
US8929961B2 (en) | 2011-07-15 | 2015-01-06 | Blackbird Technology Holdings, Inc. | Protective case for adding wireless functionality to a handheld electronic device |
US8976691B2 (en) | 2010-10-06 | 2015-03-10 | Blackbird Technology Holdings, Inc. | Method and apparatus for adaptive searching of distributed datasets |
US8983301B2 (en) | 2010-03-31 | 2015-03-17 | Corning Optical Communications LLC | Localization services in optical fiber-based distributed communications components and systems, and related methods |
US9037143B2 (en) | 2010-08-16 | 2015-05-19 | Corning Optical Communications LLC | Remote antenna clusters and related systems, components, and methods supporting digital data signal propagation between remote antenna units |
US9042353B2 (en) | 2010-10-06 | 2015-05-26 | Blackbird Technology Holdings, Inc. | Method and apparatus for low-power, long-range networking |
US9042732B2 (en) | 2010-05-02 | 2015-05-26 | Corning Optical Communications LLC | Providing digital data services in optical fiber-based distributed radio frequency (RF) communication systems, and related components and methods |
US9104548B2 (en) | 2011-01-21 | 2015-08-11 | Blackbird Technology Holdings, Inc. | Method and apparatus for memory management |
US9158864B2 (en) | 2012-12-21 | 2015-10-13 | Corning Optical Communications Wireless Ltd | Systems, methods, and devices for documenting a location of installed equipment |
US9178635B2 (en) | 2014-01-03 | 2015-11-03 | Corning Optical Communications Wireless Ltd | Separation of communication signal sub-bands in distributed antenna systems (DASs) to reduce interference |
US9185674B2 (en) | 2010-08-09 | 2015-11-10 | Corning Cable Systems Llc | Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s) |
US9184843B2 (en) | 2011-04-29 | 2015-11-10 | Corning Optical Communications LLC | Determining propagation delay of communications in distributed antenna systems, and related components, systems, and methods |
US9184960B1 (en) | 2014-09-25 | 2015-11-10 | Corning Optical Communications Wireless Ltd | Frequency shifting a communications signal(s) in a multi-frequency distributed antenna system (DAS) to avoid or reduce frequency interference |
US9240835B2 (en) | 2011-04-29 | 2016-01-19 | Corning Optical Communications LLC | Systems, methods, and devices for increasing radio frequency (RF) power in distributed antenna systems |
US9247543B2 (en) | 2013-07-23 | 2016-01-26 | Corning Optical Communications Wireless Ltd | Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs) |
US9258052B2 (en) | 2012-03-30 | 2016-02-09 | Corning Optical Communications LLC | Reducing location-dependent interference in distributed antenna systems operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9312938B2 (en) | 2007-02-19 | 2016-04-12 | Corning Optical Communications Wireless Ltd | Method and system for improving uplink performance |
US9325429B2 (en) | 2011-02-21 | 2016-04-26 | Corning Optical Communications LLC | Providing digital data services as electrical signals and radio-frequency (RF) communications over optical fiber in distributed communications systems, and related components and methods |
US9338823B2 (en) | 2012-03-23 | 2016-05-10 | Corning Optical Communications Wireless Ltd | Radio-frequency integrated circuit (RFIC) chip(s) for providing distributed antenna system functionalities, and related components, systems, and methods |
US9357551B2 (en) | 2014-05-30 | 2016-05-31 | Corning Optical Communications Wireless Ltd | Systems and methods for simultaneous sampling of serial digital data streams from multiple analog-to-digital converters (ADCS), including in distributed antenna systems |
US9385810B2 (en) | 2013-09-30 | 2016-07-05 | Corning Optical Communications Wireless Ltd | Connection mapping in distributed communication systems |
US9419712B2 (en) | 2010-10-13 | 2016-08-16 | Ccs Technology, Inc. | Power management for remote antenna units in distributed antenna systems |
US9420542B2 (en) | 2014-09-25 | 2016-08-16 | Corning Optical Communications Wireless Ltd | System-wide uplink band gain control in a distributed antenna system (DAS), based on per band gain control of remote uplink paths in remote units |
US9455784B2 (en) | 2012-10-31 | 2016-09-27 | Corning Optical Communications Wireless Ltd | Deployable wireless infrastructures and methods of deploying wireless infrastructures |
US9497706B2 (en) | 2013-02-20 | 2016-11-15 | Corning Optical Communications Wireless Ltd | Power management in distributed antenna systems (DASs), and related components, systems, and methods |
US9509133B2 (en) | 2014-06-27 | 2016-11-29 | Corning Optical Communications Wireless Ltd | Protection of distributed antenna systems |
US9525472B2 (en) | 2014-07-30 | 2016-12-20 | Corning Incorporated | Reducing location-dependent destructive interference in distributed antenna systems (DASS) operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9525488B2 (en) | 2010-05-02 | 2016-12-20 | Corning Optical Communications LLC | Digital data services and/or power distribution in optical fiber-based distributed communications systems providing digital data and radio frequency (RF) communications services, and related components and methods |
US9531452B2 (en) | 2012-11-29 | 2016-12-27 | Corning Optical Communications LLC | Hybrid intra-cell / inter-cell remote unit antenna bonding in multiple-input, multiple-output (MIMO) distributed antenna systems (DASs) |
US9549301B2 (en) | 2007-12-17 | 2017-01-17 | Corning Optical Communications Wireless Ltd | Method and system for real time control of an active antenna over a distributed antenna system |
US9590733B2 (en) | 2009-07-24 | 2017-03-07 | Corning Optical Communications LLC | Location tracking using fiber optic array cables and related systems and methods |
US9602210B2 (en) | 2014-09-24 | 2017-03-21 | Corning Optical Communications Wireless Ltd | Flexible head-end chassis supporting automatic identification and interconnection of radio interface modules and optical interface modules in an optical fiber-based distributed antenna system (DAS) |
US9621293B2 (en) | 2012-08-07 | 2017-04-11 | Corning Optical Communications Wireless Ltd | Distribution of time-division multiplexed (TDM) management services in a distributed antenna system, and related components, systems, and methods |
US9647758B2 (en) | 2012-11-30 | 2017-05-09 | Corning Optical Communications Wireless Ltd | Cabling connectivity monitoring and verification |
US9648580B1 (en) | 2016-03-23 | 2017-05-09 | Corning Optical Communications Wireless Ltd | Identifying remote units in a wireless distribution system (WDS) based on assigned unique temporal delay patterns |
US9653861B2 (en) | 2014-09-17 | 2017-05-16 | Corning Optical Communications Wireless Ltd | Interconnection of hardware components |
US9661781B2 (en) | 2013-07-31 | 2017-05-23 | Corning Optical Communications Wireless Ltd | Remote units for distributed communication systems and related installation methods and apparatuses |
US9673904B2 (en) | 2009-02-03 | 2017-06-06 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US9681313B2 (en) | 2015-04-15 | 2017-06-13 | Corning Optical Communications Wireless Ltd | Optimizing remote antenna unit performance using an alternative data channel |
US9685782B2 (en) | 2010-11-24 | 2017-06-20 | Corning Optical Communications LLC | Power distribution module(s) capable of hot connection and/or disconnection for distributed antenna systems, and related power units, components, and methods |
US9684060B2 (en) | 2012-05-29 | 2017-06-20 | CorningOptical Communications LLC | Ultrasound-based localization of client devices with inertial navigation supplement in distributed communication systems and related devices and methods |
US9699723B2 (en) | 2010-10-13 | 2017-07-04 | Ccs Technology, Inc. | Local power management for remote antenna units in distributed antenna systems |
US9715157B2 (en) | 2013-06-12 | 2017-07-25 | Corning Optical Communications Wireless Ltd | Voltage controlled optical directional coupler |
US9729267B2 (en) | 2014-12-11 | 2017-08-08 | Corning Optical Communications Wireless Ltd | Multiplexing two separate optical links with the same wavelength using asymmetric combining and splitting |
US9730228B2 (en) | 2014-08-29 | 2017-08-08 | Corning Optical Communications Wireless Ltd | Individualized gain control of remote uplink band paths in a remote unit in a distributed antenna system (DAS), based on combined uplink power level in the remote unit |
US9729251B2 (en) | 2012-07-31 | 2017-08-08 | Corning Optical Communications LLC | Cooling system control in distributed antenna systems |
US9775123B2 (en) | 2014-03-28 | 2017-09-26 | Corning Optical Communications Wireless Ltd. | Individualized gain control of uplink paths in remote units in a distributed antenna system (DAS) based on individual remote unit contribution to combined uplink power |
US9781553B2 (en) | 2012-04-24 | 2017-10-03 | Corning Optical Communications LLC | Location based services in a distributed communication system, and related components and methods |
US9785175B2 (en) | 2015-03-27 | 2017-10-10 | Corning Optical Communications Wireless, Ltd. | Combining power from electrically isolated power paths for powering remote units in a distributed antenna system(s) (DASs) |
US9800340B2 (en) | 2013-10-28 | 2017-10-24 | Corning Optical Communications Wireless Ltd | Unified optical fiber-based distributed antenna systems (DASs) for supporting small cell communications deployment from multiple small cell service providers, and related devices and methods |
US9807700B2 (en) | 2015-02-19 | 2017-10-31 | Corning Optical Communications Wireless Ltd | Offsetting unwanted downlink interference signals in an uplink path in a distributed antenna system (DAS) |
US9813229B2 (en) | 2007-10-22 | 2017-11-07 | Corning Optical Communications Wireless Ltd | Communication system using low bandwidth wires |
US9948349B2 (en) | 2015-07-17 | 2018-04-17 | Corning Optical Communications Wireless Ltd | IOT automation and data collection system |
US9974074B2 (en) | 2013-06-12 | 2018-05-15 | Corning Optical Communications Wireless Ltd | Time-division duplexing (TDD) in distributed communications systems, including distributed antenna systems (DASs) |
WO2018176950A1 (en) * | 2017-03-31 | 2018-10-04 | 京信通信系统(中国)有限公司 | Graded-plugging electrically-regulated control apparatus |
US10096909B2 (en) | 2014-11-03 | 2018-10-09 | Corning Optical Communications Wireless Ltd. | Multi-band monopole planar antennas configured to facilitate improved radio frequency (RF) isolation in multiple-input multiple-output (MIMO) antenna arrangement |
US10110308B2 (en) | 2014-12-18 | 2018-10-23 | Corning Optical Communications Wireless Ltd | Digital interface modules (DIMs) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (DASs) |
US10128951B2 (en) | 2009-02-03 | 2018-11-13 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for monitoring and configuring thereof |
US10136200B2 (en) | 2012-04-25 | 2018-11-20 | Corning Optical Communications LLC | Distributed antenna system architectures |
US10135533B2 (en) | 2014-11-13 | 2018-11-20 | Corning Optical Communications Wireless Ltd | Analog distributed antenna systems (DASS) supporting distribution of digital communications signals interfaced from a digital signal source and analog radio frequency (RF) communications signals |
US10187151B2 (en) | 2014-12-18 | 2019-01-22 | Corning Optical Communications Wireless Ltd | Digital-analog interface modules (DAIMs) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (DASs) |
US10236924B2 (en) | 2016-03-31 | 2019-03-19 | Corning Optical Communications Wireless Ltd | Reducing out-of-channel noise in a wireless distribution system (WDS) |
US10257056B2 (en) | 2012-11-28 | 2019-04-09 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US10455497B2 (en) | 2013-11-26 | 2019-10-22 | Corning Optical Communications LLC | Selective activation of communications services on power-up of a remote unit(s) in a wireless communication system (WCS) based on power consumption |
US10560214B2 (en) | 2015-09-28 | 2020-02-11 | Corning Optical Communications LLC | Downlink and uplink communication path switching in a time-division duplex (TDD) distributed antenna system (DAS) |
US10659163B2 (en) | 2014-09-25 | 2020-05-19 | Corning Optical Communications LLC | Supporting analog remote antenna units (RAUs) in digital distributed antenna systems (DASs) using analog RAU digital adaptors |
US10992484B2 (en) | 2013-08-28 | 2021-04-27 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US20210282087A1 (en) * | 2020-03-04 | 2021-09-09 | Nxp B.V. | Transceiver-based handshake/power-reduction |
US11296504B2 (en) | 2010-11-24 | 2022-04-05 | Corning Optical Communications LLC | Power distribution module(s) capable of hot connection and/or disconnection for wireless communication systems, and related power units, components, and methods |
Families Citing this family (480)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010050943A1 (en) | 1989-08-03 | 2001-12-13 | Mahany Ronald L. | Radio frequency communication network having adaptive communication parameters |
US6389010B1 (en) * | 1995-10-05 | 2002-05-14 | Intermec Ip Corp. | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US7387253B1 (en) | 1996-09-03 | 2008-06-17 | Hand Held Products, Inc. | Optical reader system comprising local host processor and optical reader |
JP3247540B2 (en) * | 1994-05-12 | 2002-01-15 | 株式会社日立製作所 | Packetized communication device and switching device |
GB9603582D0 (en) | 1996-02-20 | 1996-04-17 | Hewlett Packard Co | Method of accessing service resource items that are for use in a telecommunications system |
JP3743988B2 (en) * | 1995-12-22 | 2006-02-08 | ソニー株式会社 | Information retrieval system and method, and information terminal |
US20030112795A1 (en) * | 1998-07-22 | 2003-06-19 | Wilkes T. Clay | Voice internet transmission system |
US6154445A (en) | 1996-04-18 | 2000-11-28 | Bell Atlantic Network Services, Inc. | Telephony communication via varied redundant networks |
US6069890A (en) | 1996-06-26 | 2000-05-30 | Bell Atlantic Network Services, Inc. | Internet telephone service |
US7054271B2 (en) | 1996-12-06 | 2006-05-30 | Ipco, Llc | Wireless network system and method for providing same |
US8982856B2 (en) | 1996-12-06 | 2015-03-17 | Ipco, Llc | Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods |
US6169789B1 (en) | 1996-12-16 | 2001-01-02 | Sanjay K. Rao | Intelligent keyboard system |
US6078582A (en) | 1996-12-18 | 2000-06-20 | Bell Atlantic Network Services, Inc. | Internet long distance telephone service |
US6775264B1 (en) | 1997-03-03 | 2004-08-10 | Webley Systems, Inc. | Computer, internet and telecommunications based network |
US6137869A (en) | 1997-09-16 | 2000-10-24 | Bell Atlantic Network Services, Inc. | Network session management |
US6574216B1 (en) | 1997-03-11 | 2003-06-03 | Verizon Services Corp. | Packet data network voice call quality monitoring |
US6292479B1 (en) | 1997-03-19 | 2001-09-18 | Bell Atlantic Network Services, Inc. | Transport of caller identification information through diverse communication networks |
US6870827B1 (en) | 1997-03-19 | 2005-03-22 | Verizon Services Corp. | Voice call alternative routing through PSTN and internet networks |
US6118789A (en) | 1998-02-19 | 2000-09-12 | Micron Technology, Inc. | Method of addressing messages and communications system |
USRE43382E1 (en) | 1998-02-19 | 2012-05-15 | Round Rock Research, Llc | Method of addressing messages and communications systems |
US6072801A (en) | 1998-02-19 | 2000-06-06 | Micron Technology, Inc. | Method of addressing messages, method of establishing wireless communications, and communications system |
US6061344A (en) | 1998-02-19 | 2000-05-09 | Micron Technology, Inc. | Method of addressing messages and communications system |
US6275476B1 (en) | 1998-02-19 | 2001-08-14 | Micron Technology, Inc. | Method of addressing messages and communications system |
US7596129B2 (en) * | 1998-03-13 | 2009-09-29 | At&T Intellectual Property I, L.P. | Home gateway systems and methods to establish communication sessions |
US6591084B1 (en) * | 1998-04-27 | 2003-07-08 | General Dynamics Decision Systems, Inc. | Satellite based data transfer and delivery system |
GB2383504A (en) * | 1998-06-03 | 2003-06-25 | Orange Personal Comm Serv Ltd | A video telephone for conferencing |
US6891838B1 (en) | 1998-06-22 | 2005-05-10 | Statsignal Ipc, Llc | System and method for monitoring and controlling residential devices |
US6914893B2 (en) | 1998-06-22 | 2005-07-05 | Statsignal Ipc, Llc | System and method for monitoring and controlling remote devices |
US6437692B1 (en) | 1998-06-22 | 2002-08-20 | Statsignal Systems, Inc. | System and method for monitoring and controlling remote devices |
US8410931B2 (en) | 1998-06-22 | 2013-04-02 | Sipco, Llc | Mobile inventory unit monitoring systems and methods |
KR100330241B1 (en) * | 1998-08-26 | 2002-10-04 | 삼성전자 주식회사 | Apparatus and method for communicating wireless packet voice data |
US7248572B2 (en) * | 1998-09-22 | 2007-07-24 | Qualcomm Incorporated | Distributed infrastructure for wireless data communications |
US6314094B1 (en) * | 1998-10-29 | 2001-11-06 | Central Coast Patent Agency Inc | Mobile wireless internet portable radio |
US6993004B2 (en) * | 1998-10-29 | 2006-01-31 | Sound Starts, Inc. | Method and apparatus for practicing IP telephony from an Internet-capable radio |
FI108203B (en) * | 1998-11-27 | 2001-11-30 | Nokia Mobile Phones Ltd | Method and apparatus for transmitting information in a packet radio service |
US6903755B1 (en) | 1998-12-31 | 2005-06-07 | John T. Pugaczewski | Network management system and graphical user interface |
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 |
US6765931B1 (en) * | 1999-04-13 | 2004-07-20 | Broadcom Corporation | Gateway with voice |
US6647419B1 (en) * | 1999-09-22 | 2003-11-11 | Hewlett-Packard Development Company, L.P. | System and method for allocating server output bandwidth |
US7486648B1 (en) * | 1999-10-11 | 2009-02-03 | Park Tours, Inc. | Wireless extension of local area networks |
JP4439046B2 (en) * | 1999-10-22 | 2010-03-24 | クラリオン株式会社 | Audio equipment automatic measurement device, network system, audio equipment automatic measurement data processing / control device, recording medium for automatic measurement processing / control program |
EP1096729A1 (en) * | 1999-10-28 | 2001-05-02 | Hewlett-Packard Company, A Delaware Corporation | Rate adaptive payload transmission for local area networks |
US7403510B1 (en) * | 1999-11-10 | 2008-07-22 | Fujifilm Corporation | Communication terminal apparatus, communication method thereof, and connected destination selection method in wireless LAN |
US7263074B2 (en) * | 1999-12-09 | 2007-08-28 | Broadcom Corporation | Voice activity detection based on far-end and near-end statistics |
EP1238489B1 (en) * | 1999-12-13 | 2008-03-05 | Broadcom Corporation | Voice gateway with downstream voice synchronization |
US7126915B1 (en) * | 1999-12-28 | 2006-10-24 | At&T Corp. | Network traffic regulation |
US6721705B2 (en) | 2000-02-04 | 2004-04-13 | Webley Systems, Inc. | Robust voice browser system and voice activated device controller |
US7516190B2 (en) | 2000-02-04 | 2009-04-07 | Parus Holdings, Inc. | Personal voice-based information retrieval system |
US7046678B2 (en) * | 2000-02-18 | 2006-05-16 | At & T Corp. | Channel efficiency based packet scheduling for interactive data in cellular networks |
US7110391B1 (en) * | 2000-03-03 | 2006-09-19 | Nortel Networks Limited | Transporting telephony signaling over a data network |
US20070178912A1 (en) * | 2000-03-14 | 2007-08-02 | Robert Baranowski | System and method for enhancing user experience in a wide-area facility having a distributed, bounded environment |
US7266490B2 (en) | 2000-12-28 | 2007-09-04 | Robert Marc Zeidman | Apparatus and method for connecting hardware to a circuit simulation |
US8160863B2 (en) * | 2000-03-28 | 2012-04-17 | Ionipas Transfer Company, Llc | System and method for connecting a logic circuit simulation to a network |
ES2194694T3 (en) * | 2000-04-28 | 2003-12-01 | Cit Alcatel | METHOD, MOBILE TERMINAL AND BASE STATION TO ENSURE RESOURCES IN A SHARED CHANNEL. |
US8073565B2 (en) | 2000-06-07 | 2011-12-06 | Apple Inc. | System and method for alerting a first mobile data processing system nearby a second mobile data processing system |
US8060389B2 (en) | 2000-06-07 | 2011-11-15 | Apple Inc. | System and method for anonymous location based services |
US6456234B1 (en) | 2000-06-07 | 2002-09-24 | William J. Johnson | System and method for proactive content delivery by situation location |
JP3879376B2 (en) * | 2000-08-07 | 2007-02-14 | 富士通株式会社 | Information equipment system |
DE10039663C2 (en) * | 2000-08-14 | 2002-06-13 | Fraunhofer Ges Forschung | Method and device for reproducing information |
US6922414B1 (en) * | 2000-08-21 | 2005-07-26 | Hewlett-Packard Development Company, L.P. | Apparatus and method for dynamic command queue depth adjustment for storage area network nodes |
US8442504B2 (en) | 2000-08-23 | 2013-05-14 | Novatel Wireless, Inc. | Method and apparatus for distributed data transfer over multiple independent wireless networks |
US7224964B2 (en) * | 2000-08-23 | 2007-05-29 | Novatel Wireless, Inc. | Method and apparatus for distributed data transfer over multiple independent wireless networks |
US8521142B2 (en) | 2000-08-23 | 2013-08-27 | Novatel Wireless, Inc. | Method and apparatus for distributed data transfer over multiple independent wireless networks |
JP2002074123A (en) * | 2000-08-31 | 2002-03-15 | Sony Corp | Server user reservation method, reservation managing device and program storage medium |
EP1191730B1 (en) * | 2000-09-20 | 2009-03-25 | Lucent Technologies Inc. | Communication system and method with variable training means |
US8223975B2 (en) * | 2008-06-19 | 2012-07-17 | Xm Satellite Radio Inc. | Method and apparatus for multiplexing audio program channels from one or more received broadcast streams to provide a playlist style listening experience to users |
US9008812B2 (en) | 2008-06-19 | 2015-04-14 | Sirius Xm Radio Inc. | Method and apparatus for using selected content tracks from two or more program channels to automatically generate a blended mix channel for playback to a user upon selection of a corresponding preset button on a user interface |
FI110903B (en) * | 2000-10-30 | 2003-04-15 | Nokia Corp | Timing of transmissions in a telecommunications network |
US11467856B2 (en) * | 2002-12-12 | 2022-10-11 | Flexiworld Technologies, Inc. | Portable USB device for internet access service |
US11204729B2 (en) | 2000-11-01 | 2021-12-21 | Flexiworld Technologies, Inc. | Internet based digital content services for pervasively providing protected digital content to smart devices based on having subscribed to the digital content service |
WO2002046867A2 (en) | 2000-11-01 | 2002-06-13 | Flexiworld Technologies, Inc. | Controller and manager for device-to-device pervasive digital output |
US10915296B2 (en) | 2000-11-01 | 2021-02-09 | Flexiworld Technologies, Inc. | Information apparatus that includes a touch sensitive screen interface for managing or replying to e-mails |
US10860290B2 (en) | 2000-11-01 | 2020-12-08 | Flexiworld Technologies, Inc. | Mobile information apparatuses that include a digital camera, a touch sensitive screen interface, support for voice activated commands, and a wireless communication chip or chipset supporting IEEE 802.11 |
US20090111457A1 (en) * | 2007-10-31 | 2009-04-30 | Raze Technologies, Inc. | Wireless communication system and device for coupling a base station and mobile stations |
US7346347B2 (en) | 2001-01-19 | 2008-03-18 | Raze Technologies, Inc. | Apparatus, and an associated method, for providing WLAN service in a fixed wireless access communication system |
WO2002041107A2 (en) | 2000-11-20 | 2002-05-23 | Flexiworld Technologies, Inc. | Systems and methods for mobile and pervasive output |
US7136619B2 (en) * | 2000-12-08 | 2006-11-14 | Franklin Zhigang Zhang | Multi-channel redundant wireless network link and device |
KR100626675B1 (en) * | 2000-12-21 | 2006-09-22 | 삼성전자주식회사 | Apparatus for wireless communications and method of controlling the same |
GB0031619D0 (en) * | 2000-12-27 | 2001-02-07 | Koninkl Philips Electronics Nv | Method and apparatus for synchronising frequency hopping transceivers |
US20020099884A1 (en) | 2001-01-19 | 2002-07-25 | Chang William Ho | Output controller systems and method for universal data output |
US6883018B1 (en) * | 2001-01-24 | 2005-04-19 | Emc Corporation | Scanning a message-list |
US20020104011A1 (en) * | 2001-02-01 | 2002-08-01 | Bechtel Bwtx Idaho, Llc | Systems and methods for employing opportunistic data transfer to create a dynamically mobile data communication system |
DE10107438A1 (en) * | 2001-02-16 | 2002-09-05 | Siemens Ag | Device and method for characterizing the transmission parameters of a transmission link for high bit rate data transmission |
US7006483B2 (en) | 2001-02-23 | 2006-02-28 | Ipr Licensing, Inc. | Qualifying available reverse link coding rates from access channel power setting |
US7142581B2 (en) * | 2001-03-06 | 2006-11-28 | Ericsson Inc. | Methods and systems for selective frequency hopping in multiple mode communication systems |
US7219047B2 (en) * | 2001-03-29 | 2007-05-15 | Opnet Technologies, Inc. | Simulation with convergence-detection skip-ahead |
US6987955B1 (en) * | 2001-04-27 | 2006-01-17 | Bandspeed, Inc. | Approach for managing power for communications channels based on performance |
US7111787B2 (en) | 2001-05-15 | 2006-09-26 | Hand Held Products, Inc. | Multimode image capturing and decoding optical reader |
US20020188656A1 (en) * | 2001-05-15 | 2002-12-12 | Charles Patton | Combining specialized, spatially distinguished, point to point communications with other wireless networking communications to provide networking configuration in classroom-like settings |
US7483411B2 (en) * | 2001-06-04 | 2009-01-27 | Nec Corporation | Apparatus for public access mobility LAN and method of operation thereof |
ITTO20010568A1 (en) * | 2001-06-14 | 2002-12-14 | Telecom Italia Lab Spa | SYSTEM AND METHOD TO SIMULATE THE BEHAVIOR OF A NETWORK FOR RADIO-MOBILE EQUIPMENT. |
US20030005138A1 (en) * | 2001-06-25 | 2003-01-02 | Giffin Michael Shawn | Wireless streaming audio system |
US20030007642A1 (en) * | 2001-07-05 | 2003-01-09 | Jiang Sam Shiaw-Shiang | Local suspend function and reset procedure in a wireless communications system |
US7245592B2 (en) * | 2001-07-09 | 2007-07-17 | Koninklijke Philips Electronics N.V. | Aligning 802.11e HCF and 802.11h TPC operations |
US20030032438A1 (en) * | 2001-08-09 | 2003-02-13 | Meschia Maurilio | Network connection system for machine tools, particularly injection presses for plastics |
US7251246B2 (en) | 2001-09-14 | 2007-07-31 | Snowshore Networks, Inc. | Selective packet processing in a packet based media processor for latency reduction |
US8489063B2 (en) | 2001-10-24 | 2013-07-16 | Sipco, Llc | Systems and methods for providing emergency messages to a mobile device |
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 |
JP4037640B2 (en) * | 2001-11-15 | 2008-01-23 | 日本電気株式会社 | Wireless terminal |
JP3857572B2 (en) * | 2001-11-20 | 2006-12-13 | 沖電気工業株式会社 | IP telephone apparatus and IP telephone apparatus search method |
US20030100350A1 (en) * | 2001-11-27 | 2003-05-29 | Kevin Dotzler | Speakerphone mute indicator |
US7453843B2 (en) * | 2001-12-11 | 2008-11-18 | Texas Instruments Incorporated | Wireless bandwidth aggregator |
US20030120821A1 (en) * | 2001-12-21 | 2003-06-26 | Thermond Jeffrey L. | Wireless local area network access management |
WO2003058483A1 (en) | 2002-01-08 | 2003-07-17 | Seven Networks, Inc. | Connection architecture for a mobile network |
US6947772B2 (en) * | 2002-01-31 | 2005-09-20 | Qualcomm Incorporated | System and method for providing messages on a wireless device connecting to an application server |
US7548350B2 (en) * | 2002-03-20 | 2009-06-16 | International Business Machines Corporation | Method and apparatus for interactively scanning images into a logical structure |
US6959865B2 (en) | 2002-03-28 | 2005-11-01 | Hand Held Products, Inc. | Customizable optical reader |
US7116643B2 (en) * | 2002-04-30 | 2006-10-03 | Motorola, Inc. | Method and system for data in a collection and route discovery communication network |
US7116995B2 (en) * | 2002-05-31 | 2006-10-03 | Nokia Corporation | System and method for operating intravendor and intervendor messaging systems |
US20030222147A1 (en) | 2002-06-04 | 2003-12-04 | Hand Held Products, Inc. | Optical reader having a plurality of imaging modules |
US8596542B2 (en) | 2002-06-04 | 2013-12-03 | Hand Held Products, Inc. | Apparatus operative for capture of image data |
US7286513B2 (en) * | 2002-06-05 | 2007-10-23 | Sigma Designs, Inc. | Wireless switch for use in wireless communications |
US20040054522A1 (en) * | 2002-06-20 | 2004-03-18 | Govindarajan Jagannathan | System and method to access web resources from wireless devices |
US7003331B2 (en) * | 2002-06-26 | 2006-02-21 | Lenovo (Singapore) Pte. Ltd. | Apparatus, method and program to optimize battery life in a wireless device |
US7519728B1 (en) * | 2002-07-18 | 2009-04-14 | Juniper Networks, Inc. | Merge systems and methods for transmit systems interfaces |
US7417980B2 (en) * | 2002-08-06 | 2008-08-26 | Brother Kogyo Kabushiki Kaisha | Internet telephone system |
US7421266B1 (en) * | 2002-08-12 | 2008-09-02 | Mcafee, Inc. | Installation and configuration process for wireless network |
US7233658B2 (en) * | 2002-08-13 | 2007-06-19 | At&T Knowledge Ventures, L.P. | Flexible ring-tone service |
US20040203825A1 (en) * | 2002-08-16 | 2004-10-14 | Cellglide Technologies Corp. | Traffic control in cellular networks |
WO2004021720A1 (en) | 2002-08-28 | 2004-03-11 | Symbol Technologies, Inc. | Personal area networks |
US7039398B2 (en) * | 2002-08-30 | 2006-05-02 | Qualcomm Incorporated | Server processing of interactive screens for a wireless device |
US6996394B2 (en) * | 2002-08-30 | 2006-02-07 | Qualcomm Incorporated | Server processing in providing messages for a wireless device connecting to a server |
US7567509B2 (en) * | 2002-09-13 | 2009-07-28 | Dialogic Corporation | Methods and systems for jitter minimization in streaming media |
US7295857B2 (en) * | 2002-10-30 | 2007-11-13 | Qualcomm Incorporated | Method and apparatus for performing acquisition in power save mode for wireless communication systems |
US7698550B2 (en) | 2002-11-27 | 2010-04-13 | Microsoft Corporation | Native wi-fi architecture for 802.11 networks |
AU2003300880A1 (en) | 2002-12-12 | 2004-07-09 | Flexiworld Technologies, Inc. | Wireless communication between computing devices |
US7437162B1 (en) | 2003-02-10 | 2008-10-14 | Sprint Spectrum L.P. | Method and system for dynamically delivering a voice call as voice or data depending on data-mode of destination terminal |
US6965564B2 (en) * | 2003-02-14 | 2005-11-15 | America Online, Inc. | Wireless datagram transaction protocol system |
US7508781B2 (en) * | 2003-03-25 | 2009-03-24 | Texas Instruments Incorporated | Power saving mechanism for wireless LANs via schedule information vector |
GB0306973D0 (en) * | 2003-03-26 | 2003-04-30 | British Telecomm | Transmitting video |
CN107797953B (en) * | 2003-04-11 | 2021-10-08 | 富意科技公司 | Integrated circuit storage device or method capable of realizing automatic operation |
JP4136771B2 (en) * | 2003-04-23 | 2008-08-20 | キヤノン株式会社 | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM |
JP4125173B2 (en) | 2003-04-23 | 2008-07-30 | キヤノン株式会社 | Information processing apparatus connection control method, information processing apparatus, and computer program |
US20050045635A1 (en) * | 2003-09-03 | 2005-03-03 | Jane Dong | Containers for storing articles |
WO2004110026A1 (en) * | 2003-06-05 | 2004-12-16 | Wireless Security Corporation | Methods and systems of remote authentication for computer networks |
US7882179B2 (en) * | 2003-06-20 | 2011-02-01 | Compuware Corporation | Computer system tools and method for development and testing |
US7337317B2 (en) | 2003-07-03 | 2008-02-26 | Hand Held Products, Inc. | Memory data copying system for devices |
DE10330596A1 (en) * | 2003-07-07 | 2005-02-03 | Siemens Ag | Assignment of station addresses to communication users in a bus system |
US7536714B2 (en) * | 2003-07-11 | 2009-05-19 | Computer Associates Think, Inc. | System and method for synchronizing login processes |
US7644170B2 (en) * | 2003-08-11 | 2010-01-05 | Teamon Systems, Inc. | Communications system providing extensible protocol translation features and related methods |
DE10337699B4 (en) * | 2003-08-16 | 2006-01-12 | Phoenix Contact Gmbh & Co. Kg | Method and device for transmitting data over a bus network using the broadcast principle |
JP3951990B2 (en) * | 2003-09-05 | 2007-08-01 | ブラザー工業株式会社 | Wireless station, program, and operation control method |
US20050058112A1 (en) * | 2003-09-15 | 2005-03-17 | Sony Corporation | Method of and apparatus for adaptively managing connectivity for mobile devices through available interfaces |
US7522928B2 (en) * | 2003-10-24 | 2009-04-21 | Intel Corporation | Dynamic EMI (electromagnetic interference) management |
US7324491B1 (en) * | 2003-10-29 | 2008-01-29 | Avaya Technology Llc | Method and apparatus for over-the-air bandwidth reservations in wireless networks |
US7599339B2 (en) * | 2003-11-12 | 2009-10-06 | Interdigital Technology Corporation | Method and system for transferring wireless transmit/receive unit-specific information |
PL1687941T3 (en) | 2003-11-19 | 2015-12-31 | Koninklijke Philips Nv | Method for access to a medium by a multi-channel device |
US7366202B2 (en) * | 2003-12-08 | 2008-04-29 | Colubris Networks, Inc. | System and method for interference mitigation for wireless communication |
US7428414B2 (en) * | 2003-12-31 | 2008-09-23 | Megasoft Consultants, Inc. | Cross technology roaming solution system and method of use |
JP4581404B2 (en) * | 2004-01-06 | 2010-11-17 | 富士ゼロックス株式会社 | Information processing apparatus and information processing program |
US7406691B2 (en) | 2004-01-13 | 2008-07-29 | International Business Machines Corporation | Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment |
US7562143B2 (en) * | 2004-01-13 | 2009-07-14 | International Business Machines Corporation | Managing escalating resource needs within a grid environment |
US7522609B2 (en) * | 2004-01-14 | 2009-04-21 | Cisco Technology, Inc | Propagation of minimum guaranteed scheduling rates among scheduling layers in a hierarchical schedule |
US7464159B2 (en) * | 2004-01-14 | 2008-12-09 | International Business Machines Corporation | Managing analysis of a degraded service in a grid environment |
US7552437B2 (en) | 2004-01-14 | 2009-06-23 | International Business Machines Corporation | Maintaining application operations within a suboptimal grid environment |
KR100813611B1 (en) * | 2004-02-18 | 2008-03-17 | 가부시키가이샤 엔티티 도코모 | Packet transfer system, radio base station, and packet transfer route optimization method |
US7756086B2 (en) | 2004-03-03 | 2010-07-13 | Sipco, Llc | Method for communicating in dual-modes |
US8031650B2 (en) | 2004-03-03 | 2011-10-04 | Sipco, Llc | System and method for monitoring remote devices with a dual-mode wireless communication protocol |
US20050198219A1 (en) * | 2004-03-04 | 2005-09-08 | International Business Machines Corporation | Unicast messaging for waking up sleeping devices |
GB0406901D0 (en) * | 2004-03-26 | 2004-04-28 | British Telecomm | Transmitting recorded material |
US7499402B2 (en) * | 2004-04-13 | 2009-03-03 | Radioframe Networks, Inc. | Network delay control |
CN100579045C (en) * | 2004-05-10 | 2010-01-06 | 松下电器产业株式会社 | Wireless node apparatus and multihop wireless lan system |
US20050256694A1 (en) * | 2004-05-12 | 2005-11-17 | Mike Taylor | Variable accuracy simulation software and method of using the same |
US20060048157A1 (en) * | 2004-05-18 | 2006-03-02 | International Business Machines Corporation | Dynamic grid job distribution from any resource within a grid environment |
JP2005354126A (en) * | 2004-06-08 | 2005-12-22 | Hitachi Communication Technologies Ltd | Radio communication terminal, radio base station, and radio communication system |
US7266547B2 (en) | 2004-06-10 | 2007-09-04 | International Business Machines Corporation | Query meaning determination through a grid service |
TWM259411U (en) * | 2004-06-11 | 2005-03-11 | Quanta Comp Inc | Automatic sliding mechanism |
US7584274B2 (en) * | 2004-06-15 | 2009-09-01 | International Business Machines Corporation | Coordinating use of independent external resources within requesting grid environments |
US7990849B2 (en) * | 2004-06-17 | 2011-08-02 | Hewlett-Packard Development Company, L.P. | Automated recovery from a split segment condition in a layer2 network for teamed network resources of a computer system |
US7603131B2 (en) * | 2005-08-12 | 2009-10-13 | Sellerbid, Inc. | System and method for providing locally applicable internet content with secure action requests and item condition alerts |
US7826478B2 (en) * | 2004-07-26 | 2010-11-02 | Research In Motion Limited | Method and apparatus for soliciting connectivity from wireless data networks |
US9032065B2 (en) * | 2004-07-30 | 2015-05-12 | Qualcomm Incorporated | Fast link establishment for network access |
US7570630B1 (en) | 2004-08-02 | 2009-08-04 | Sprint Spectrum L.P. | Dialed-digit based determination of whether to originate a call as a circuit-switched call or a packet-switched call |
GEP20094867B (en) | 2004-08-12 | 2009-12-25 | Interdigital Tech Corp | Method and system for controlling access to a wireless communication medium |
US9232461B2 (en) * | 2004-09-08 | 2016-01-05 | Cradlepoint, Inc. | Hotspot communication limiter |
US7712100B2 (en) * | 2004-09-14 | 2010-05-04 | International Business Machines Corporation | Determining a capacity of a grid environment to handle a required workload for a virtual grid job request |
US8233416B2 (en) * | 2004-09-28 | 2012-07-31 | Qualcomm Incorporated | Handoff supports for networks having different link establishment protocols |
AU2005295553A1 (en) | 2004-10-15 | 2006-04-27 | Universcel Corporation | Communications systems and methods using wireline adapters |
CN100505796C (en) * | 2004-11-24 | 2009-06-24 | 中兴通讯股份有限公司 | Time displaying method for cell phone |
US8631450B1 (en) | 2004-12-02 | 2014-01-14 | Entropic Communications, Inc. | Broadband local area network |
EP1670179B1 (en) * | 2004-12-09 | 2007-11-28 | Research In Motion Limited | Apparatus and methods for two or more delivery traffic indication message (DTIM) periods in wireless networks |
US7590744B2 (en) * | 2004-12-15 | 2009-09-15 | Guard Insurance Group | Remote communication system and method implementing a session server and one or more object servers |
US7656853B2 (en) * | 2004-12-27 | 2010-02-02 | Microsoft Corporation | Reducing power consumption of a wireless device |
US8386523B2 (en) * | 2004-12-30 | 2013-02-26 | Texas Instruments Incorporated | Random access audio decoder |
US7707288B2 (en) * | 2005-01-06 | 2010-04-27 | International Business Machines Corporation | Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment |
US7533170B2 (en) * | 2005-01-06 | 2009-05-12 | International Business Machines Corporation | Coordinating the monitoring, management, and prediction of unintended changes within a grid environment |
US7761557B2 (en) * | 2005-01-06 | 2010-07-20 | International Business Machines Corporation | Facilitating overall grid environment management by monitoring and distributing grid activity |
US20060149652A1 (en) * | 2005-01-06 | 2006-07-06 | Fellenstein Craig W | Receiving bid requests and pricing bid responses for potential grid job submissions within a grid environment |
US7668741B2 (en) * | 2005-01-06 | 2010-02-23 | International Business Machines Corporation | Managing compliance with service level agreements in a grid environment |
US7590623B2 (en) | 2005-01-06 | 2009-09-15 | International Business Machines Corporation | Automated management of software images for efficient resource node building within a grid environment |
US7793308B2 (en) * | 2005-01-06 | 2010-09-07 | International Business Machines Corporation | Setting operation based resource utilization thresholds for resource use by a process |
US7502850B2 (en) * | 2005-01-06 | 2009-03-10 | International Business Machines Corporation | Verifying resource functionality before use by a grid job submitted to a grid environment |
US7571120B2 (en) | 2005-01-12 | 2009-08-04 | International Business Machines Corporation | Computer implemented method for estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms |
US7562035B2 (en) | 2005-01-12 | 2009-07-14 | International Business Machines Corporation | Automating responses by grid providers to bid requests indicating criteria for a grid job |
US8005032B2 (en) * | 2005-01-21 | 2011-08-23 | Research In Motion Limited | Maintaining delivery traffic indication message (DTIM) periods on a per-wireless client device basis |
US7593417B2 (en) * | 2005-01-21 | 2009-09-22 | Research In Motion Limited | Handling broadcast and multicast traffic as unicast traffic in a wireless network |
US9439126B2 (en) | 2005-01-25 | 2016-09-06 | Sipco, Llc | Wireless network protocol system and methods |
EP1847108A1 (en) * | 2005-02-07 | 2007-10-24 | Telefonaktiebolaget LM Ericsson (publ) | Plain old telephony equivalent services supported via unlicensed mobile access |
US7940652B1 (en) | 2005-02-14 | 2011-05-10 | Brixham Solutions Ltd. | Pseudowire protection using a standby pseudowire |
EP1701486A1 (en) * | 2005-03-07 | 2006-09-13 | BRITISH TELECOMMUNICATIONS public limited company | Route selection in multi-hop cellular network |
US20060206941A1 (en) * | 2005-03-08 | 2006-09-14 | Praesidium Technologies, Ltd. | Communications system with distributed risk management |
US20060253735A1 (en) * | 2005-03-11 | 2006-11-09 | Interdigital Technology Corporation | Method and system for conserving battery power of mesh points in a mesh network |
FR2883444B1 (en) * | 2005-03-17 | 2007-05-04 | Evolium Sas Soc Par Actions Si | METHOD FOR ANALYZING THE OPERATION OF A CELLULAR MOBILE TELECOMMUNICATION NETWORK |
US7143006B2 (en) * | 2005-03-23 | 2006-11-28 | Cisco Technology, Inc. | Policy-based approach for managing the export of network flow statistical data |
US20060221939A1 (en) * | 2005-03-31 | 2006-10-05 | Rosen Eric C | System and method for simultaneous voice and data call over wireless infrastructure |
US7353034B2 (en) | 2005-04-04 | 2008-04-01 | X One, Inc. | Location sharing and tracking using mobile phones or other wireless devices |
EP1871123B1 (en) * | 2005-04-05 | 2011-08-10 | Panasonic Corporation | Wireless network system in a vehicle |
US20060265509A1 (en) * | 2005-04-22 | 2006-11-23 | Pandit Shrihari B | Methods and systems for communicating voice, audio, video, text and/or multimedia data |
US7541216B2 (en) * | 2005-06-09 | 2009-06-02 | Nantero, Inc. | Method of aligning deposited nanotubes onto an etched feature using a spacer |
JP4502393B2 (en) | 2005-06-13 | 2010-07-14 | キヤノン株式会社 | Communication parameter sharing method and communication apparatus |
US9160658B1 (en) | 2005-07-12 | 2015-10-13 | Brixham Solutions Ltd. | Proxies for pseudo-wire allocation and distribution |
DE602005013004D1 (en) * | 2005-08-05 | 2009-04-09 | Ericsson Telefon Ab L M | COMMUNICATION SYSTEM |
US7768548B2 (en) * | 2005-08-12 | 2010-08-03 | William Bradford Silvernail | Mobile digital video recording system |
US8594915B2 (en) * | 2005-08-12 | 2013-11-26 | Samsung Electronics Co., Ltd. | Traffic alert system and method |
JP4414382B2 (en) * | 2005-08-16 | 2010-02-10 | 東京エレクトロンデバイス株式会社 | OPTICAL NETWORK SYSTEM, OPTICAL NETWORK DEVICE, AND OPTICAL NETWORK CONTROL METHOD |
US8155105B2 (en) * | 2005-09-22 | 2012-04-10 | Rsi Video Technologies, Inc. | Spread spectrum wireless communication and monitoring arrangement and method |
JP4564433B2 (en) * | 2005-09-26 | 2010-10-20 | 富士通株式会社 | Transmission apparatus and frame transfer method |
US7738433B2 (en) * | 2005-09-27 | 2010-06-15 | Sony Ericsson Mobile Communications Ab | Method, apparatus, and computer program products for adapting a transmission setting |
EP1771021A1 (en) * | 2005-09-29 | 2007-04-04 | Telefonaktiebolaget LM Ericsson (publ) | A method and apparatus for allocation of radio resources |
US8225104B1 (en) * | 2005-10-06 | 2012-07-17 | Symantec Corporation | Data access security |
US8588061B2 (en) | 2005-10-07 | 2013-11-19 | Brixham Solutions Ltd. | Application wire |
US8924459B2 (en) * | 2005-10-21 | 2014-12-30 | Cisco Technology, Inc. | Support for WISPr attributes in a TAL/CAR PWLAN environment |
US9084260B2 (en) | 2005-10-26 | 2015-07-14 | Intel Corporation | Systems for communicating using multiple frequency bands in a wireless network |
US20070106574A1 (en) * | 2005-11-08 | 2007-05-10 | Kappel Thomas A | Inventory management system and method for a cellular communications system |
US7519014B2 (en) * | 2005-12-16 | 2009-04-14 | The Boeing Company | Multi-network aircraft communication systems and methods |
US7934660B2 (en) * | 2006-01-05 | 2011-05-03 | Hand Held Products, Inc. | Data collection system having reconfigurable data collection terminal |
US8811369B2 (en) * | 2006-01-11 | 2014-08-19 | Qualcomm Incorporated | Methods and apparatus for supporting multiple communications modes of operation |
CN104320770B (en) * | 2006-01-11 | 2018-04-06 | 高通股份有限公司 | Encoding beacon signals are to provide mark in peer-to-peer communications |
US8311048B2 (en) * | 2008-05-09 | 2012-11-13 | Roundbox, Inc. | Datacasting system with intermittent listener capability |
US7751357B2 (en) | 2006-02-06 | 2010-07-06 | Olympus Corporation | Power management |
US8576811B2 (en) * | 2006-02-06 | 2013-11-05 | Motorola Solutions, Inc. | System, method and apparatus for reliable exchange of information between nodes of a multi-hop wireless communication network |
US8155693B2 (en) | 2006-02-27 | 2012-04-10 | Broadcom Corporation | Mobile communication device providing communication pathway determination assistance |
US8072946B2 (en) * | 2006-03-30 | 2011-12-06 | Intel Corporation | Coordinated transmissions in wireless networks |
EP2005680A1 (en) * | 2006-04-05 | 2008-12-24 | James Andrew Wanless | A method and system for smart route dialling to a destination identifier using a telephone |
US20090161687A1 (en) * | 2006-04-11 | 2009-06-25 | Jin Fei Yu | Medium Access Control Method for Data Transmission Through CATV Access Network |
US8555371B1 (en) * | 2009-07-17 | 2013-10-08 | Directpacket Research, Inc. | Systems and methods for management of nodes across disparate networks |
AU2007246157A1 (en) * | 2006-04-28 | 2007-11-08 | National Ict Australia Limited | Packet based communications |
US8102813B2 (en) * | 2006-04-28 | 2012-01-24 | Microsoft Corporation | Coordinating a transition of a roaming client between wireless access points using another client in physical proximity |
CA2651553A1 (en) * | 2006-05-08 | 2007-11-22 | Critical Rf, Inc. | System for transmitting two-way radio communications via computer networks |
JP4641973B2 (en) * | 2006-05-10 | 2011-03-02 | 富士通株式会社 | One-way communication method, mobile station apparatus and radio base station apparatus |
US7840601B2 (en) * | 2006-05-12 | 2010-11-23 | Sap Ag | Editable table modification |
US8224322B2 (en) * | 2006-06-12 | 2012-07-17 | Lemko Corporation | Roaming mobile subscriber registration in a distributed mobile architecture |
JP2009542125A (en) * | 2006-06-23 | 2009-11-26 | オリンパス コミュニケーション テクノロジィ オブ アメリカ,インク. | Power management system and method |
US8848711B1 (en) | 2006-08-04 | 2014-09-30 | Brixham Solutions Ltd. | Global IP-based service-oriented network architecture |
JP4816323B2 (en) * | 2006-08-16 | 2011-11-16 | ソニー株式会社 | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM |
US9137287B2 (en) * | 2006-08-28 | 2015-09-15 | Avaya Inc. | High availability for voice enabled applications |
US11303684B2 (en) | 2006-09-14 | 2022-04-12 | Opentv, Inc. | Methods and systems for data transmission |
US7930449B2 (en) * | 2006-09-14 | 2011-04-19 | Opentv Inc. | Method and system for data transmission |
US8335873B2 (en) | 2006-09-14 | 2012-12-18 | Opentv, Inc. | Method and systems for data transmission |
US7630331B2 (en) * | 2006-09-27 | 2009-12-08 | Broadcom Corporation | Power control techniques for wireless devices |
BRPI0717271A2 (en) * | 2006-09-28 | 2013-10-22 | Qualcomm Inc | UNION OF EFFICIENCY COMMUNICATION SIGNS |
ES2897828T3 (en) * | 2006-09-28 | 2022-03-02 | Qualcomm Inc | Predictive allocation of QoS resources for fast session establishment |
EP1912395B1 (en) * | 2006-10-09 | 2009-12-23 | France Telecom | Instant messaging server capable of notifying the accessibility of information by a client |
WO2008051487A2 (en) | 2006-10-19 | 2008-05-02 | Ascendent Telecommunications, Inc. | Client device method and apparatus for routing a call |
TWI338521B (en) * | 2006-11-17 | 2011-03-01 | Hon Hai Prec Ind Co Ltd | Access point and method for switching channel thereof |
US8089970B2 (en) | 2006-12-14 | 2012-01-03 | Ntt Docomo, Inc. | Method and apparatus for managing admission and routing in multi-hop 802.11 networks taking into consideration traffic shaping at intermediate hops |
US9258405B1 (en) | 2006-12-18 | 2016-02-09 | Good Technology Software, Inc. | Meeting integration for a messaging and scheduling application |
CN100558068C (en) * | 2006-12-19 | 2009-11-04 | 华为技术有限公司 | A kind of superframe managing method |
US8532658B2 (en) * | 2006-12-19 | 2013-09-10 | Airvana Network Solutions, Inc. | Neighbor list provision in a communication network |
JP2008172569A (en) * | 2007-01-12 | 2008-07-24 | Matsushita Electric Ind Co Ltd | Radio communication system |
US7973644B2 (en) | 2007-01-30 | 2011-07-05 | Round Rock Research, Llc | Systems and methods for RFID tag arbitration where RFID tags generate multiple random numbers for different arbitration sessions |
US20080198787A1 (en) * | 2007-02-15 | 2008-08-21 | Agentek, Inc. | Mobile Data Object Transmission Over Wireless Communication Networks Using UDP and Two Level Protocol |
US7986933B2 (en) * | 2007-03-19 | 2011-07-26 | Apple Inc. | Method and system for wireless communications between base and mobile stations |
US8842834B2 (en) * | 2007-03-19 | 2014-09-23 | Harris Corporation | Robust delivery of packet based secure voice |
WO2008121878A1 (en) * | 2007-03-28 | 2008-10-09 | Proximetry, Inc. | Systems and methods for distance measurement in wireless networks |
KR100957009B1 (en) * | 2007-04-03 | 2010-05-13 | 삼성전자주식회사 | Apparatus and method for simultaneous transmission scheduling in multihop cellular system |
US20080248835A1 (en) * | 2007-04-04 | 2008-10-09 | Sony Ericsson Mobile Communications Ab | Accessory communication method and system for mobile services |
US20080273486A1 (en) * | 2007-04-13 | 2008-11-06 | Hart Communication Foundation | Wireless Protocol Adapter |
US8197442B2 (en) * | 2007-04-27 | 2012-06-12 | Codman & Shurtleff, Inc. | Interventional medical device system having a slotted section and radiopaque marker and method of making the same |
JP4956281B2 (en) * | 2007-05-29 | 2012-06-20 | キヤノン株式会社 | Wireless communication apparatus and control method thereof |
US8134452B2 (en) * | 2007-05-30 | 2012-03-13 | Round Rock Research, Llc | Methods and systems of receiving data payload of RFID tags |
US7986914B1 (en) | 2007-06-01 | 2011-07-26 | At&T Mobility Ii Llc | Vehicle-based message control using cellular IP |
US8385946B2 (en) | 2007-06-28 | 2013-02-26 | Apple Inc. | Disfavored route progressions or locations |
US9109904B2 (en) | 2007-06-28 | 2015-08-18 | Apple Inc. | Integration of map services and user applications in a mobile device |
US8774825B2 (en) | 2007-06-28 | 2014-07-08 | Apple Inc. | Integration of map services with user applications in a mobile device |
US8762056B2 (en) | 2007-06-28 | 2014-06-24 | Apple Inc. | Route reference |
US8180379B2 (en) | 2007-06-28 | 2012-05-15 | Apple Inc. | Synchronizing mobile and vehicle devices |
US8463238B2 (en) | 2007-06-28 | 2013-06-11 | Apple Inc. | Mobile device base station |
US9066199B2 (en) | 2007-06-28 | 2015-06-23 | Apple Inc. | Location-aware mobile device |
US8290513B2 (en) | 2007-06-28 | 2012-10-16 | Apple Inc. | Location-based services |
US8108144B2 (en) | 2007-06-28 | 2012-01-31 | Apple Inc. | Location based tracking |
US8332402B2 (en) | 2007-06-28 | 2012-12-11 | Apple Inc. | Location based media items |
US8275352B2 (en) | 2007-06-28 | 2012-09-25 | Apple Inc. | Location-based emergency information |
US8175802B2 (en) | 2007-06-28 | 2012-05-08 | Apple Inc. | Adaptive route guidance based on preferences |
US8311526B2 (en) | 2007-06-28 | 2012-11-13 | Apple Inc. | Location-based categorical information services |
US8204684B2 (en) | 2007-06-28 | 2012-06-19 | Apple Inc. | Adaptive mobile device navigation |
JP5354381B2 (en) * | 2007-06-29 | 2013-11-27 | 日本電気株式会社 | Session control system, session control method, and session control program |
KR100969757B1 (en) * | 2007-07-09 | 2010-07-13 | 삼성전자주식회사 | Method and system of communicating peer to peer in a communication system |
US7961698B2 (en) * | 2007-07-10 | 2011-06-14 | Qualcomm Incorporated | Methods and apparatus for controlling interference to broadcast signaling in a peer to peer network |
US8495232B2 (en) * | 2007-07-10 | 2013-07-23 | Qualcomm Incorporated | Methods and apparatus for supporting broadcast communications in a peer to peer network |
US8861418B2 (en) * | 2007-07-10 | 2014-10-14 | Qualcomm Incorporated | Methods and apparatus for supporting group communications with data re-transmission support |
US8694662B2 (en) * | 2007-07-10 | 2014-04-08 | Qualcomm Incorporated | Method and apparatus for communicating transmission requests to members of a group and/or making group related transmission decisions |
US8452303B2 (en) * | 2007-07-19 | 2013-05-28 | Avaya Inc. | Reduction of wireless communication costs in enterprises |
CA2694368C (en) * | 2007-07-23 | 2013-10-08 | Telcordia Technologies, Inc. | Systems and methods for multi-beam optic-wireless vehicle communications |
US8635309B2 (en) | 2007-08-09 | 2014-01-21 | Hand Held Products, Inc. | Methods and apparatus to change a feature set on data collection devices |
US20090073476A1 (en) * | 2007-09-13 | 2009-03-19 | Konica Minolta Systems Laboratory, Inc. | Printing appratus and system |
US7856047B2 (en) * | 2007-09-21 | 2010-12-21 | Honeywell International Inc. | System and method for concurrent frequency hopping of radio communications |
KR20100085070A (en) * | 2007-09-24 | 2010-07-28 | 노키아 코포레이션 | Coded application data until order recovery in layered multicast |
US8279848B1 (en) * | 2007-09-27 | 2012-10-02 | Sprint Communications Company L.P. | Determining characteristics of a mobile user of a network |
US8127246B2 (en) | 2007-10-01 | 2012-02-28 | Apple Inc. | Varying user interface element based on movement |
GB0719233D0 (en) * | 2007-10-02 | 2007-11-14 | Skype Ltd | Method of transmitting data in a communication system |
US8977294B2 (en) | 2007-10-10 | 2015-03-10 | Apple Inc. | Securely locating a device |
WO2009061796A1 (en) * | 2007-11-05 | 2009-05-14 | Collins, Tim | Service management system for providing service related message prioritization in a mobile client |
US9886503B2 (en) | 2007-12-27 | 2018-02-06 | Sirius Xm Radio Inc. | Method and apparatus for multiplexing audio program channels from one or more received broadcast streams to provide a playlist style listening experience to users |
EP2228932B1 (en) * | 2007-12-28 | 2020-04-15 | NEC Corporation | Radio communication method, radio communication device and radio communication system |
CN101471853B (en) * | 2007-12-29 | 2012-02-29 | 华为技术有限公司 | Route calculation method, unit and system |
US8363600B2 (en) * | 2007-12-31 | 2013-01-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Optimized mobile internet access |
US8355862B2 (en) | 2008-01-06 | 2013-01-15 | Apple Inc. | Graphical user interface for presenting location information |
US8452529B2 (en) | 2008-01-10 | 2013-05-28 | Apple Inc. | Adaptive navigation system for estimating travel times |
EP2101503A1 (en) * | 2008-03-11 | 2009-09-16 | British Telecommunications Public Limited Company | Video coding |
US8639267B2 (en) * | 2008-03-14 | 2014-01-28 | William J. Johnson | System and method for location based exchanges of data facilitating distributed locational applications |
US8600341B2 (en) | 2008-03-14 | 2013-12-03 | William J. Johnson | System and method for location based exchanges of data facilitating distributed locational applications |
US8306652B2 (en) * | 2008-03-14 | 2012-11-06 | International Business Machines Corporation | Dual-band communication of management traffic in a blade server system |
US8761751B2 (en) * | 2008-03-14 | 2014-06-24 | William J. Johnson | System and method for targeting data processing system(s) with data |
US8566839B2 (en) | 2008-03-14 | 2013-10-22 | William J. Johnson | System and method for automated content presentation objects |
US8112078B2 (en) * | 2008-03-14 | 2012-02-07 | Critical Rf, Inc. | System, method and program for configuring a mobile terminal to function as a two-way radio |
US8750841B2 (en) * | 2008-03-14 | 2014-06-10 | William J. Johnson | System and method for automatically leaving an outgoing caller message |
US8634796B2 (en) | 2008-03-14 | 2014-01-21 | William J. Johnson | System and method for location based exchanges of data facilitating distributed location applications |
US8046420B2 (en) | 2008-04-23 | 2011-10-25 | Lemko Corporation | System and method to control wireless communications |
US8971336B2 (en) * | 2008-04-30 | 2015-03-03 | Telefonaktiebolaget L M Ericsson (Publ) | Circuit allocation within a communication core network |
EP2983389B1 (en) | 2008-04-30 | 2017-07-19 | Alexander Poltorak | Multi-tier and secure service wireless communications networks |
US8595501B2 (en) * | 2008-05-09 | 2013-11-26 | Qualcomm Incorporated | Network helper for authentication between a token and verifiers |
US9250092B2 (en) | 2008-05-12 | 2016-02-02 | Apple Inc. | Map service with network-based query for search |
US8644843B2 (en) | 2008-05-16 | 2014-02-04 | Apple Inc. | Location determination |
US20090323578A1 (en) * | 2008-06-25 | 2009-12-31 | Robert Bosch Gmbh | Wireless Vehicle Communication Method Utilizing Wired Backbone |
US8340667B2 (en) | 2008-06-26 | 2012-12-25 | Lemko Corporation | System and method to control wireless communications |
US8706105B2 (en) | 2008-06-27 | 2014-04-22 | Lemko Corporation | Fault tolerant distributed mobile architecture |
US20090327539A1 (en) * | 2008-06-30 | 2009-12-31 | Tommi Kanerva | Multiple Die System Status Communication System |
US8369867B2 (en) | 2008-06-30 | 2013-02-05 | Apple Inc. | Location sharing |
US8107409B2 (en) | 2008-07-11 | 2012-01-31 | Lemko Corporation | OAMP for distributed mobile architecture |
US7855988B2 (en) | 2008-07-14 | 2010-12-21 | Lemko Corporation | System, method, and device for routing calls using a distributed mobile architecture |
BR122020001578B1 (en) * | 2008-09-03 | 2021-01-05 | Siemens Industry, Inc. | building system |
GB2476606B (en) | 2008-09-08 | 2012-08-08 | Virginia Tech Intell Prop | Systems, devices, and methods for managing energy usage |
US8576760B2 (en) * | 2008-09-12 | 2013-11-05 | Qualcomm Incorporated | Apparatus and methods for controlling an idle mode in a wireless device |
US8359643B2 (en) | 2008-09-18 | 2013-01-22 | Apple Inc. | Group formation using anonymous broadcast information |
WO2010032791A1 (en) * | 2008-09-22 | 2010-03-25 | シャープ株式会社 | Base station apparatuses, terminal apparatuses, wireless communication system having those apparatuses, and programs base stations of that system are caused to execute |
US9202362B2 (en) | 2008-10-27 | 2015-12-01 | Mueller International, Llc | Infrastructure monitoring system and method |
JP5365640B2 (en) * | 2008-10-27 | 2013-12-11 | 日本電気株式会社 | Base station, radio communication system, base station control method, radio communication method, and control program |
JP5466241B2 (en) * | 2008-10-30 | 2014-04-09 | アップル インコーポレイテッド | Relaying technique suitable for user equipment in downlink |
TW201021531A (en) * | 2008-11-20 | 2010-06-01 | Wistron Corp | Method and related apparatus for managing short messages in a mobile communication system |
JP4490499B2 (en) * | 2008-11-26 | 2010-06-23 | パナソニック株式会社 | Communication terminal, relay device, wireless communication system, wireless communication control method, and program |
EP2200319A1 (en) | 2008-12-10 | 2010-06-23 | BRITISH TELECOMMUNICATIONS public limited company | Multiplexed video streaming |
US8619754B2 (en) * | 2009-01-15 | 2013-12-31 | Essence Security International Ltd. | Robust channel allocation method for RF communication systems |
CN101478331B (en) * | 2009-01-23 | 2012-09-05 | 东南大学 | Constructing method for dual time frequency non-repeat non-complete frequency hopping sequence |
US9916564B1 (en) | 2009-01-27 | 2018-03-13 | Robert A. Johns | Computer-based systems and methods for collaborative travel planning |
CN102318277B (en) * | 2009-02-10 | 2014-11-05 | 皇家飞利浦电子股份有限公司 | A system and method for controlling the access to a networked control system |
EP2219342A1 (en) | 2009-02-12 | 2010-08-18 | BRITISH TELECOMMUNICATIONS public limited company | Bandwidth allocation control in multiple video streaming |
JP5366600B2 (en) * | 2009-03-16 | 2013-12-11 | キヤノン株式会社 | Image forming apparatus |
US8660530B2 (en) | 2009-05-01 | 2014-02-25 | Apple Inc. | Remotely receiving and communicating commands to a mobile device for execution by the mobile device |
US8670748B2 (en) | 2009-05-01 | 2014-03-11 | Apple Inc. | Remotely locating and commanding a mobile device |
US8666367B2 (en) | 2009-05-01 | 2014-03-04 | Apple Inc. | Remotely locating and commanding a mobile device |
CA2772545C (en) | 2009-05-22 | 2018-12-11 | Mueller International, Inc. | Infrastructure monitoring devices, systems, and methods |
US8238538B2 (en) | 2009-05-28 | 2012-08-07 | Comcast Cable Communications, Llc | Stateful home phone service |
US8352278B2 (en) * | 2009-06-02 | 2013-01-08 | Ford Global Technologies, Llc | Methods and systems for resolving the incompatibility of media items playable from a vehicle |
US8121958B2 (en) | 2009-06-08 | 2012-02-21 | Ricoh Company, Ltd. | Approach for determining alternative printing device arrangements |
US9641625B2 (en) * | 2009-06-09 | 2017-05-02 | Ford Global Technologies, Llc | Method and system for executing an internet radio application within a vehicle |
US8274994B2 (en) * | 2009-06-19 | 2012-09-25 | Qualcomm Incorporated | Methods and apparatus for communicating using a gateway communications device having alert generation capability |
EP2446696B1 (en) * | 2009-06-26 | 2019-10-02 | Koninklijke Philips N.V. | Communication in a mobile network implementing discontinuous reception |
US8762518B2 (en) * | 2009-07-10 | 2014-06-24 | Telcordia Technologies, Inc. | Program and method for adaptively maintaining a local peer group in a dynamic environment |
EP2479702A4 (en) * | 2009-09-17 | 2016-04-13 | Fujitsu Ltd | Base station, web application server, system and method |
US8902912B2 (en) | 2009-11-04 | 2014-12-02 | New Jersey Institute Of Technology | Differential frame based scheduling for input queued switches |
US8767544B1 (en) * | 2009-11-10 | 2014-07-01 | Sprint Communications Company L.P. | Data rate selection for wireless communication devices |
US8897741B2 (en) | 2009-11-13 | 2014-11-25 | William J. Johnson | System and method for mobile device usability by locational conditions |
US8565290B2 (en) * | 2009-11-17 | 2013-10-22 | Nokia Corporation | Method and apparatus for latency-aware scheduling using interference cancellation |
US9226339B2 (en) * | 2009-12-03 | 2015-12-29 | Qualcomm Incorporated | Method and apparatus for cooperative multifunctional communication in a wireless communication system |
US8493856B2 (en) * | 2009-12-18 | 2013-07-23 | Alcatel Lucent | Energy efficiency with rate adaptation |
EP2339887B1 (en) * | 2009-12-22 | 2013-04-17 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangement for network nodes of a wireless communication network |
US20110195712A1 (en) * | 2010-02-05 | 2011-08-11 | Christian Mucke | Wireless network frequency scanning |
US8553520B2 (en) * | 2010-02-25 | 2013-10-08 | Tokbox, Inc. | System and method for echo suppression in web browser-based communication |
US9923995B1 (en) * | 2010-02-27 | 2018-03-20 | Sitting Man, Llc | Methods, systems, and computer program products for sharing information for detecting an idle TCP connection |
US8327029B1 (en) | 2010-03-12 | 2012-12-04 | The Mathworks, Inc. | Unified software construct representing multiple synchronized hardware systems |
JP5114523B2 (en) * | 2010-04-05 | 2013-01-09 | 株式会社エヌ・ティ・ティ・ドコモ | Base station apparatus, mobile terminal apparatus and communication control method |
US8699471B2 (en) * | 2010-04-15 | 2014-04-15 | Texas Instruments Incorporated | System and method for scrambling and time-hopping |
EP2577919B1 (en) * | 2010-06-03 | 2018-05-09 | Telefonaktiebolaget LM Ericsson (publ) | Reducing network power consumption |
US9357328B1 (en) | 2010-06-15 | 2016-05-31 | Thales Avionics, Inc. | Systems and methods for distributing content using attributes |
WO2011159403A1 (en) | 2010-06-16 | 2011-12-22 | Mueller International, Llc | Infrastructure monitoring devices, systems, and methods |
KR101052037B1 (en) | 2010-06-22 | 2011-07-26 | 삼성탈레스 주식회사 | Tactical multiband multirole radio equipment and method of setting up master/slave for tactical multiband multirole radio docking the tactical multiband multirole radio equipment |
US9143961B2 (en) | 2010-07-02 | 2015-09-22 | T-Mobile Usa, Inc. | Switching matrix and test platform |
US8897168B2 (en) | 2010-07-29 | 2014-11-25 | Qualcomm Incorporated | Systems and methods of communication using tunneled direct link setup (TDLS) |
US8514662B2 (en) * | 2010-08-27 | 2013-08-20 | Verifone Systems, Inc. | Sonic receiver and method for receiving data that uses modulation frequncies that reduce the probability of conflict with ambient noise in the environment |
US8990199B1 (en) | 2010-09-30 | 2015-03-24 | Amazon Technologies, Inc. | Content search with category-aware visual similarity |
US8792459B2 (en) | 2010-10-06 | 2014-07-29 | Qualcomm Incorporated | Methods and apparatus for joint scheduling of peer-to-peer links and wireless wide area network links in cellular networks |
US8804734B2 (en) * | 2010-11-03 | 2014-08-12 | Broadcom Corporation | Unified vehicle network frame protocol |
US8517269B2 (en) | 2010-11-09 | 2013-08-27 | Hand Held Products, Inc. | Using a user'S application to configure user scanner |
US8837257B2 (en) | 2010-11-29 | 2014-09-16 | Verifone Systems, Incorporated | Acoustic modulation protocol |
JP5711518B2 (en) * | 2010-12-15 | 2015-04-30 | キヤノン株式会社 | Information processing apparatus, control method thereof, and program |
US8780953B2 (en) * | 2010-12-17 | 2014-07-15 | Cisco Technology, Inc. | Dynamic assignment of frequency hopping sequences in a communication network |
CN103210320B (en) | 2010-12-21 | 2016-01-13 | 英派尔科技开发有限公司 | For the virtual information of the location privacy in location Based service |
US8977310B2 (en) | 2010-12-30 | 2015-03-10 | Motorola Solutions, Inc. | Methods for coordinating wireless coverage between different wireless networks for members of a communication group |
US8561903B2 (en) | 2011-01-31 | 2013-10-22 | Hand Held Products, Inc. | System operative to adaptively select an image sensor for decodable indicia reading |
US8990703B2 (en) * | 2011-02-01 | 2015-03-24 | Sony Corporation | Smart-remote protocol |
US8488505B2 (en) * | 2011-02-02 | 2013-07-16 | College Of William And Mary | Method/system for conserving resources during conversation over wireless network transport media |
US20120201170A1 (en) * | 2011-02-07 | 2012-08-09 | Alcatel-Lucent Usa Inc. | Backhaul Optimization For Traffic Aggregation |
US8824437B2 (en) * | 2011-03-02 | 2014-09-02 | Ricoh Company, Ltd. | Wireless communications device, electronic apparatus, and methods for determining and updating access point |
US8681699B2 (en) | 2011-05-10 | 2014-03-25 | General Electric Company | Contention media access control for telecommunications |
US8833390B2 (en) | 2011-05-31 | 2014-09-16 | Mueller International, Llc | Valve meter assembly and method |
JP2012252580A (en) * | 2011-06-03 | 2012-12-20 | Sony Corp | Power control device, power management device and power management system |
US20120311166A1 (en) * | 2011-06-03 | 2012-12-06 | Garcia Jr Roberto | Pipe Selection Heuristics |
US8965917B2 (en) * | 2011-06-28 | 2015-02-24 | Amazon Technologies, Inc. | Optimizing cell search in a mobile communication system supporting variable channel bandwidths |
US8395985B2 (en) | 2011-07-25 | 2013-03-12 | Ofinno Technologies, Llc | Time alignment in multicarrier OFDM network |
US8816814B2 (en) | 2011-08-16 | 2014-08-26 | Elwha Llc | Systematic distillation of status data responsive to whether or not a wireless signal has been received and relating to regimen compliance |
US9736045B2 (en) | 2011-09-16 | 2017-08-15 | Qualcomm Incorporated | Systems and methods for network quality estimation, connectivity detection, and load management |
US8982768B2 (en) * | 2011-10-14 | 2015-03-17 | Bluetick, Inc. | System and method to monitor and control remote sensors and equipment |
US8608071B2 (en) | 2011-10-17 | 2013-12-17 | Honeywell Scanning And Mobility | Optical indicia reading terminal with two image sensors |
US8872647B2 (en) | 2011-10-21 | 2014-10-28 | Ford Global Technologies, Llc | Method and apparatus for context adaptive multimedia management |
US8855569B2 (en) * | 2011-10-27 | 2014-10-07 | Mueller International, Llc | Systems and methods for dynamic squelching in radio frequency devices |
US8914053B2 (en) * | 2011-11-11 | 2014-12-16 | Fujitsu Limited | System and method for selecting transceivers to provide wireless communication service for a wireless user endpoint |
US8825096B2 (en) * | 2011-12-20 | 2014-09-02 | Motorola Solutions, Inc. | Method and apparatus for enabling voice discussions among independent and simultaneous users of data content |
US9237537B2 (en) | 2012-01-25 | 2016-01-12 | Ofinno Technologies, Llc | Random access process in a multicarrier base station and wireless device |
EP3937551A3 (en) | 2012-01-25 | 2022-02-09 | Comcast Cable Communications, LLC | Random access channel in multicarrier wireless communications with timing advance groups |
US8526389B2 (en) | 2012-01-25 | 2013-09-03 | Ofinno Technologies, Llc | Power scaling in multicarrier wireless device |
US11943813B2 (en) | 2012-04-01 | 2024-03-26 | Comcast Cable Communications, Llc | Cell grouping for wireless communications |
US20130259008A1 (en) | 2012-04-01 | 2013-10-03 | Esmael Hejazi Dinan | Random Access Response Process in a Wireless Communications |
US11582704B2 (en) | 2012-04-16 | 2023-02-14 | Comcast Cable Communications, Llc | Signal transmission power adjustment in a wireless device |
US11252679B2 (en) | 2012-04-16 | 2022-02-15 | Comcast Cable Communications, Llc | Signal transmission power adjustment in a wireless device |
US8964593B2 (en) | 2012-04-16 | 2015-02-24 | Ofinno Technologies, Llc | Wireless device transmission power |
US8989128B2 (en) | 2012-04-20 | 2015-03-24 | Ofinno Technologies, Llc | Cell timing in a wireless device and base station |
US11825419B2 (en) | 2012-04-16 | 2023-11-21 | Comcast Cable Communications, Llc | Cell timing in a wireless device and base station |
EP3337079B1 (en) | 2012-04-16 | 2024-06-05 | Comcast Cable Communications, LLC | Cell group configuration for uplink transmission in a multicarrier wireless device and base station with timing advance groups |
US9210664B2 (en) | 2012-04-17 | 2015-12-08 | Ofinno Technologies. LLC | Preamble transmission in a wireless device |
US8608053B2 (en) | 2012-04-30 | 2013-12-17 | Honeywell International Inc. | Mobile communication terminal configured to display multi-symbol decodable indicia |
US11882560B2 (en) | 2012-06-18 | 2024-01-23 | Comcast Cable Communications, Llc | Carrier grouping in multicarrier wireless networks |
US9084228B2 (en) | 2012-06-20 | 2015-07-14 | Ofinno Technologies, Llc | Automobile communication device |
US11622372B2 (en) | 2012-06-18 | 2023-04-04 | Comcast Cable Communications, Llc | Communication device |
US9113387B2 (en) | 2012-06-20 | 2015-08-18 | Ofinno Technologies, Llc | Handover signalling in wireless networks |
US9107206B2 (en) | 2012-06-18 | 2015-08-11 | Ofinne Technologies, LLC | Carrier grouping in multicarrier wireless networks |
WO2014065592A1 (en) * | 2012-10-23 | 2014-05-01 | Lg Electronics Inc. | Method and apparatus for performing backoff for scheduling request in wireless communication system |
US9241307B2 (en) * | 2012-10-24 | 2016-01-19 | Qualcomm Incorporated | Method and apparatus using an ultra low power signal with scheduled power save modes |
US9179409B2 (en) * | 2012-12-03 | 2015-11-03 | Qualcomm Incorporated | Multiple access scheme for narrowband channels |
US11222534B2 (en) | 2013-12-20 | 2022-01-11 | Sfara, Inc. | System and method for smartphone communication during vehicle mode |
JP6106027B2 (en) * | 2013-05-27 | 2017-03-29 | キヤノン株式会社 | Image communication apparatus, control method thereof, and program |
US9544754B1 (en) * | 2013-05-28 | 2017-01-10 | Marvell International Ltd. | Systems and methods for scheduling discovery-related communication in a wireless network |
US9288361B2 (en) | 2013-06-06 | 2016-03-15 | Open Text S.A. | Systems, methods and computer program products for fax delivery and maintenance |
US9143979B1 (en) | 2013-06-18 | 2015-09-22 | Marvell International Ltd. | Method and apparatus for limiting a number of mobile devices that can contend for a time slot in a wireless network |
WO2015039311A1 (en) * | 2013-09-18 | 2015-03-26 | 华为技术有限公司 | Method and apparatus for establishing interface between access points |
US9894489B2 (en) | 2013-09-30 | 2018-02-13 | William J. Johnson | System and method for situational proximity observation alerting privileged recipients |
US20150365785A1 (en) * | 2013-11-05 | 2015-12-17 | Sascha Simon | System and method for detecting a handshake signal |
US9585177B2 (en) | 2013-12-11 | 2017-02-28 | At&T Intellectual Property I, L.P. | Cellular connection sharing |
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 |
US9838809B2 (en) | 2014-10-24 | 2017-12-05 | Line 6, Inc | System and method for a redundant real-time wireless receiver network |
US10448391B2 (en) * | 2014-11-24 | 2019-10-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and device for transmission and reception of time-frequency resources |
KR102387567B1 (en) * | 2015-01-19 | 2022-04-18 | 삼성전자주식회사 | Method and apparatus for speech recognition |
US9654902B2 (en) * | 2015-05-22 | 2017-05-16 | Hyukjun Oh | Methods for performing machine type communication for the purpose of coverage enhancement apparatuses and systems for performing the same |
US9860678B2 (en) | 2015-05-22 | 2018-01-02 | Hyukjun Oh | Methods for performing machine type communication for the purpose of coverage enhancement, apparatuses and systems for performing the same |
US9820248B2 (en) * | 2015-06-30 | 2017-11-14 | Globalfoundries Inc. | Network clock synchronization |
CN106911338B (en) * | 2015-12-23 | 2019-04-02 | 深圳市华信天线技术有限公司 | The adaptive communication method and device of data radio station |
CN111954174B (en) | 2015-12-31 | 2022-07-29 | 华为技术有限公司 | Method for prompting calling |
KR102484560B1 (en) * | 2016-01-12 | 2023-01-04 | 삼성전자주식회사 | A method and apparatus for transmitting a signal in a communication systme |
CN105656913B (en) * | 2016-01-29 | 2019-07-09 | 福建星网锐捷通讯股份有限公司 | A kind of method of adaptive network when intelligent terminal broadcasting video |
JP2017152920A (en) * | 2016-02-24 | 2017-08-31 | パナソニックIpマネジメント株式会社 | Communication terminal, multi-hop communication system and program |
US10070403B2 (en) | 2016-03-09 | 2018-09-04 | Mueller International, Llc | Time beacons |
US10582347B2 (en) | 2016-04-14 | 2020-03-03 | Mueller International, Llc | SMS communication for cellular node |
US10097411B2 (en) | 2016-05-23 | 2018-10-09 | Mueller International, Llc | Node migration |
US10200947B2 (en) | 2016-07-11 | 2019-02-05 | Mueller International, Llc | Asymmetrical hail timing |
JP6696336B2 (en) * | 2016-07-20 | 2020-05-20 | 富士通株式会社 | Transmission control device, wireless communication system, and calibration method |
CN106372012B (en) * | 2016-08-25 | 2018-12-25 | 长沙丰灼通讯科技有限公司 | A kind of serial ports wake-up system and serial port communication method without using control line of shaking hands |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
US10965337B2 (en) * | 2016-09-30 | 2021-03-30 | Sony Mobile Communications Inc. | Antenna configuration switching for full-duplex transmission |
US10523498B2 (en) * | 2016-12-23 | 2019-12-31 | Sierra Nevada Corporation | Multi-broker messaging and telemedicine database replication |
US10334515B2 (en) * | 2017-01-13 | 2019-06-25 | ENK Wireless, Inc. | Conveying information via auxiliary device selection |
WO2018146150A1 (en) * | 2017-02-08 | 2018-08-16 | Sony Mobile Communications Inc. | Media access control |
JP6515404B2 (en) * | 2017-03-13 | 2019-05-22 | 本田技研工業株式会社 | Communication device, communication method, and program |
US10250658B2 (en) | 2017-03-17 | 2019-04-02 | The Directv Group, Inc. | Hybrid media stream delivery using multiple network connections |
US10178617B2 (en) | 2017-05-01 | 2019-01-08 | Mueller International, Llc | Hail and acceptance for battery-powered devices |
EP3429306B1 (en) * | 2017-07-14 | 2020-08-26 | HTC Corporation | Frequency hopping communication recovering method, electronic device, and non-transitory computer readable storage medium |
US11071063B2 (en) * | 2017-07-23 | 2021-07-20 | Ali Atefi | Apparatuses, methods, and computer-readable medium for communication in a wireless local area network |
WO2019063479A1 (en) * | 2017-09-28 | 2019-04-04 | Sony Corporation | Paging method and apparatus for wireless communication system |
US10267652B1 (en) | 2018-01-23 | 2019-04-23 | Mueller International, Llc | Node communication with unknown network ID |
TWI678092B (en) | 2018-04-27 | 2019-11-21 | 奇邑科技股份有限公司 | Method and system for long-distance full-duplex wireless communication |
US10674446B1 (en) * | 2018-05-08 | 2020-06-02 | Architecture Technology Corporation | Sleep/wake based on coverage |
CN112616070B (en) * | 2018-05-31 | 2022-12-09 | 西安万像电子科技有限公司 | Transmission link management method and device |
US10917857B2 (en) * | 2019-04-18 | 2021-02-09 | Comcast Cable Communications, Llc | Methods and systems for wireless communication |
US20210142281A1 (en) * | 2019-11-12 | 2021-05-13 | Airspace Technologies, Inc. | Logistical Management System |
FR3112663B1 (en) * | 2020-07-16 | 2023-08-04 | Safran Electronics & Defense | Wireless communication system |
JP2022056083A (en) * | 2020-09-29 | 2022-04-08 | キヤノン株式会社 | Image reading device |
US11573917B2 (en) * | 2021-03-04 | 2023-02-07 | Liqid Inc. | Low latency computing architecture |
CN113992528B (en) * | 2021-09-09 | 2023-06-13 | 江西台德智慧科技有限公司 | Self-adaptive network intelligent interaction system and self-adaptive adjustment method |
WO2024184711A1 (en) * | 2023-03-08 | 2024-09-12 | Nokia Technologies Oy | Multi-step charging and activation of semi-passive devices in unlicensed spectrum |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4313036A (en) * | 1980-02-19 | 1982-01-26 | Rolm Corporation | Distributed CBX system employing packet network |
US4488288A (en) * | 1982-06-25 | 1984-12-11 | At&T Bell Laboratories | End-to-end information memory arrangement in a line controller |
US4614841A (en) * | 1982-06-29 | 1986-09-30 | At&T Bell Laboratories | Geographically distributed multiprocessor time-shared communication processing system |
US5440541A (en) * | 1992-12-16 | 1995-08-08 | Fujitsu Limited | System and method for establishing communications between subscribers based on personal number assigned to each subscriber |
Family Cites Families (350)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US556610A (en) * | 1896-03-17 | Lawn-sprinkler | ||
US1153247A (en) * | 1913-11-19 | 1915-09-14 | William H Oldfield | Trap. |
US3786195A (en) * | 1971-08-13 | 1974-01-15 | Dc Dt Liquidating Partnership | Variable delay line signal processor for sound reproduction |
US3789195A (en) * | 1972-05-09 | 1974-01-29 | Gulf & Western Industries | Digital counter and timer with multiplex setting and readout |
US3956589A (en) * | 1973-11-26 | 1976-05-11 | Paradyne Corporation | Data telecommunication system |
US4144496A (en) * | 1976-03-17 | 1979-03-13 | Harris Corporation | Mobile communication system and method employing frequency reuse within a geographical service area |
US4100377A (en) * | 1977-04-28 | 1978-07-11 | Bell Telephone Laboratories, Incorporated | Packet transmission of speech |
US4079210A (en) * | 1977-05-11 | 1978-03-14 | Bell Telephone Laboratories, Incorporated | Ringing and testing control circuitry for communication systems |
IT1108325B (en) * | 1978-04-10 | 1985-12-09 | Cselt Centro Studi Lab Telecom | ROAD PROCEDURE AND DEVICE FOR A PACKAGE SWITCHING COMMUNICATION NETWORK |
US4281380A (en) * | 1978-12-27 | 1981-07-28 | Harris Corporation | Bus collision avoidance system for distributed network data processing communications system |
IT1118518B (en) * | 1979-03-27 | 1986-03-03 | Cselt Centro Studi Lab Telecom | PROCEDURE AND DEVICE FOR THE RECONSTRUCTION OF THE VOICE SIGNAL IN A PACKAGE SWITCHING COMMUNICATION SYSTEM |
US4355411A (en) * | 1980-03-24 | 1982-10-19 | Bell Telephone Laboratories, Incorporated | Technique for efficient spectrum utilization in mobile radio systems using space diversity |
US4376874A (en) * | 1980-12-15 | 1983-03-15 | Sperry Corporation | Real time speech compaction/relay with silence detection |
JPS57159192A (en) * | 1981-03-27 | 1982-10-01 | Hitachi Ltd | Audio packet exchange system |
US4493021A (en) * | 1981-04-03 | 1985-01-08 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Multicomputer communication system |
US4450554A (en) * | 1981-08-10 | 1984-05-22 | International Telephone And Telegraph Corporation | Asynchronous integrated voice and data communication system |
JPS58153436A (en) * | 1982-03-08 | 1983-09-12 | Fuji Xerox Co Ltd | Method for resending error |
US4516156A (en) * | 1982-03-15 | 1985-05-07 | Satellite Business Systems | Teleconferencing method and system |
US4961043A (en) | 1988-03-15 | 1990-10-02 | Norand Corporation | Battery conditioning system having communication with battery parameter memory means in conjunction with battery conditioning |
US4716354A (en) | 1985-11-12 | 1987-12-29 | Norand Corporation | Automatic voltage regulator means providing a dual low power responsive and output-voltage-controlling regulator signal particularly for a plural source battery powered system |
US4553081A (en) | 1982-06-07 | 1985-11-12 | Norand Corporation | Portable battery powered system |
US4554416A (en) * | 1983-03-08 | 1985-11-19 | The United States Of America As Represented By The Secretary Of The Air Force | Low voltage two wire to four wire telephone circuit converter apparatus |
US4538259A (en) | 1983-07-05 | 1985-08-27 | International Business Machines Corporation | System for digitized voice and data with means to compensate for variable path delays |
US4704696A (en) | 1984-01-26 | 1987-11-03 | Texas Instruments Incorporated | Method and apparatus for voice control of a computer |
EP0162173B1 (en) | 1984-05-23 | 1989-08-16 | International Business Machines Corporation | Digital transmission system for a packetized voice |
US4903261A (en) * | 1984-10-29 | 1990-02-20 | Stratacom, Inc. | Synchronous packet voice/data communication system |
CA1220830A (en) * | 1984-12-28 | 1987-04-21 | David S. Drynan | Transmitting sequence numbers of information in a packet data transmission system |
US4675863A (en) * | 1985-03-20 | 1987-06-23 | International Mobile Machines Corp. | Subscriber RF telephone system for providing multiple speech and/or data signals simultaneously over either a single or a plurality of RF channels |
GB2173070B (en) | 1985-03-28 | 1988-09-21 | Stc Plc | Digital telecommunication system |
US4847829A (en) * | 1985-04-08 | 1989-07-11 | Datapoint Corporation | Video conferencing network |
US4641302A (en) * | 1985-06-24 | 1987-02-03 | Racal Data Communications Inc. | High speed packet switching arrangement |
DE3705636A1 (en) * | 1986-02-24 | 1987-09-03 | Sharp Kk | TRANSMISSION INFORMATION SYSTEM FOR A FACSIMILE DEVICE |
US4723238A (en) * | 1986-03-24 | 1988-02-02 | American Telephone And Telegraph Company | Interface circuit for interconnecting circuit switched and packet switched systems |
JPS62225096A (en) * | 1986-03-26 | 1987-10-03 | Nec Corp | Radiotelephony system |
US4797915A (en) * | 1986-10-09 | 1989-01-10 | American Telephone And Telegraph Company | Communication system having automatic call route selection |
US4777633A (en) | 1987-08-14 | 1988-10-11 | International Mobile Machines Corp. | Base station for wireless digital telephone system |
DE3639753A1 (en) * | 1986-11-21 | 1988-06-01 | Inst Rundfunktechnik Gmbh | METHOD FOR TRANSMITTING DIGITALIZED SOUND SIGNALS |
US4884132A (en) | 1986-11-25 | 1989-11-28 | Morris James A | Personal security system |
US4757497A (en) * | 1986-12-03 | 1988-07-12 | Lan-Tel, Inc. | Local area voice/data communications and switching system |
US4941089A (en) * | 1986-12-12 | 1990-07-10 | Datapoint Corporation | Input/output network for computer system |
CA1290020C (en) * | 1987-02-09 | 1991-10-01 | Steven Messenger | Wireless local area network |
US4789983A (en) | 1987-03-05 | 1988-12-06 | American Telephone And Telegraph Company, At&T Bell Laboratories | Wireless network for wideband indoor communications |
US4751728A (en) * | 1987-03-27 | 1988-06-14 | Treat John M | Telephone call monitoring, metering and selection device |
US4837858A (en) | 1987-04-30 | 1989-06-06 | Motorola, Inc. | Subscriber unit for a trunked voice/data communication system |
US4837856A (en) * | 1987-05-04 | 1989-06-06 | Glista Jr Andrew S | Fault-tolerant fiber optic coupler/repeater for use in high speed data transmission and the like |
US4903262A (en) * | 1987-08-14 | 1990-02-20 | General Electric Company | Hardware interface and protocol for a mobile radio transceiver |
US4914586A (en) | 1987-11-06 | 1990-04-03 | Xerox Corporation | Garbage collector for hypermedia systems |
US4928094A (en) * | 1988-01-25 | 1990-05-22 | The Boeing Company | Battery-operated data collection apparatus having an infrared touch screen data entry device |
US4866704A (en) * | 1988-03-16 | 1989-09-12 | California Institute Of Technology | Fiber optic voice/data network |
GB8807050D0 (en) * | 1988-03-24 | 1988-04-27 | British Telecomm | Communication system |
US4872160A (en) | 1988-03-31 | 1989-10-03 | American Telephone And Telegraph Company, At&T Bell Laboratories | Integrated packetized voice and data switching system |
US5425051A (en) | 1992-11-09 | 1995-06-13 | Norand Corporation | Radio frequency communication network having adaptive parameters |
US5483676A (en) * | 1988-08-04 | 1996-01-09 | Norand Corporation | Mobile radio data communication system and method |
US4910794A (en) * | 1988-08-04 | 1990-03-20 | Norand Corporation | Mobile radio data communication system and method |
US5367558A (en) | 1988-09-23 | 1994-11-22 | Motorola, Inc. | Cellular cordless telephone |
US5148429A (en) | 1988-10-27 | 1992-09-15 | Kabushiki Kaisha Toshiba | Voice data transmission system and method |
US4916691A (en) * | 1988-10-28 | 1990-04-10 | American Telephone And Telegraph Company | Telecommunications switching system |
US4837658A (en) * | 1988-12-14 | 1989-06-06 | Xerox Corporation | Long life corona charging device |
US5726984A (en) | 1989-01-31 | 1998-03-10 | Norand Corporation | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US5657317A (en) | 1990-01-18 | 1997-08-12 | Norand Corporation | Hierarchical communication system using premises, peripheral and vehicular local area networking |
US5023869A (en) * | 1989-03-27 | 1991-06-11 | Alberta Telecommunications Research Centre | Method and apparatus for maximizing the transmission capacity of a multi-channel bidirectional communications link |
US4996685A (en) * | 1989-04-10 | 1991-02-26 | Bell Communications Research, Inc. | Technique for dynamically changing an ISDN connection during a host session |
GB8910085D0 (en) | 1989-05-03 | 1989-06-21 | British Telecomm | Mobile communications system |
US5842224A (en) * | 1989-06-16 | 1998-11-24 | Fenner; Peter R. | Method and apparatus for source filtering data packets between networks of differing media |
US5062133A (en) * | 1989-07-07 | 1991-10-29 | Logotronix Incorporated | Multi-function telephone call management system |
US5185783A (en) * | 1989-08-30 | 1993-02-09 | Canon Kabushiki Kaisha | Communication apparatus for detecting a calling signal from a line, for detecting a data communication signal from a calling station, and for generating a quasi-calling tone |
US5163131A (en) * | 1989-09-08 | 1992-11-10 | Auspex Systems, Inc. | Parallel i/o network file server architecture |
US5103467A (en) * | 1989-10-31 | 1992-04-07 | Motorola, Inc. | Asynchronous voice reconstruction for a digital communication system |
US5196876A (en) * | 1989-11-20 | 1993-03-23 | Thayer Donald O | Photography booth and method |
IL96392A0 (en) | 1989-11-29 | 1991-08-16 | Motorola Inc | Wireless in-building telecommunications system for voice and data communications |
US5406271A (en) * | 1989-12-23 | 1995-04-11 | Systec Ausbausysteme Gmbh | System for supplying various departments of large self-service stores with department-specific information |
US5177737A (en) * | 1990-01-02 | 1993-01-05 | At&T Bell Laboratories | Multipurpose bus system |
US5949776A (en) * | 1990-01-18 | 1999-09-07 | Norand Corporation | Hierarchical communication system using premises, peripheral and vehicular local area networking |
US5008929A (en) * | 1990-01-18 | 1991-04-16 | U.S. Intelco Networks, Inc. | Billing system for telephone signaling network |
US6389010B1 (en) * | 1995-10-05 | 2002-05-14 | Intermec Ip Corp. | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
US5682379A (en) | 1993-12-23 | 1997-10-28 | Norand Corporation | Wireless personal local area network |
US6359872B1 (en) | 1997-10-28 | 2002-03-19 | Intermec Ip Corp. | Wireless personal local area network |
US6006100A (en) | 1990-05-25 | 1999-12-21 | Norand Corporation | Multi-level, hierarchical radio-frequency communication system |
US6654378B1 (en) * | 1992-03-18 | 2003-11-25 | Broadcom Corp. | Transaction control system including portable data terminal and mobile customer service station |
US5359598A (en) | 1990-06-22 | 1994-10-25 | Unisys Corporation | Voice server for digital communication network |
EP0752763B1 (en) | 1990-07-25 | 2003-09-17 | Broadcom Corporation | Multi-level radio-frequency communication system |
US5251205A (en) | 1990-09-04 | 1993-10-05 | Digital Equipment Corporation | Multiple protocol routing |
US5142534A (en) | 1990-10-17 | 1992-08-25 | O'neill Communications, Inc. | Wireless integrated voice-data communication system |
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 |
US5068916A (en) * | 1990-10-29 | 1991-11-26 | International Business Machines Corporation | Coordination of wireless medium among a plurality of base stations |
US5216427A (en) * | 1990-11-01 | 1993-06-01 | California Institute Of Technology | Land-mobile satellite communication system |
US5179721A (en) | 1990-11-05 | 1993-01-12 | Motorola Inc. | Method for inter operation of a cellular communication system and a trunking communication system |
US5218618A (en) * | 1990-11-07 | 1993-06-08 | Hughes Aircraft Company | Cellular telephone service using spread spectrum transmission |
US5299198A (en) * | 1990-12-06 | 1994-03-29 | Hughes Aircraft Company | Method and apparatus for exploitation of voice inactivity to increase the capacity of a time division multiple access radio communications system |
US5475689A (en) * | 1990-12-06 | 1995-12-12 | Hughes Aircraft Company | Cellular telephone with datagram and dispatch operation |
IL100213A (en) * | 1990-12-07 | 1995-03-30 | Qualcomm Inc | CDMA microcellular telephone system and distributed antenna system therefor |
US5155689A (en) * | 1991-01-17 | 1992-10-13 | By-Word Technologies, Inc. | Vehicle locating and communicating method and apparatus |
US5734981A (en) * | 1991-01-17 | 1998-03-31 | Highwaymaster Communications, Inc. | Method and apparatus for call delivery to a mobile unit |
EP0530345A4 (en) | 1991-02-01 | 1993-06-30 | Republic Telcom Systems Corp. | Packet switching communications system |
US5128959A (en) * | 1991-02-22 | 1992-07-07 | Motorola, Inc. | Variable bandwidth CDMA radio system |
US5341374A (en) * | 1991-03-01 | 1994-08-23 | Trilan Systems Corporation | Communication network integrating voice data and video with distributed call processing |
JP2749456B2 (en) * | 1991-03-06 | 1998-05-13 | 三菱電機株式会社 | Wireless communication equipment |
US5282202A (en) * | 1991-03-28 | 1994-01-25 | Sprint International Communications Corp. | Composite frame reconfiguration in integrated services networks |
US5394436A (en) | 1991-10-01 | 1995-02-28 | Norand Corporation | Radio frequency local area network |
US5796772A (en) * | 1991-05-13 | 1998-08-18 | Omnipoint Corporation | Multi-band, multi-mode spread-spectrum communication system |
US7558557B1 (en) * | 1991-11-12 | 2009-07-07 | Broadcom Corporation | Low-power messaging in a network supporting roaming terminals |
US5434798A (en) * | 1991-05-23 | 1995-07-18 | Telefonaktiebolaget L M Ericcson | Reconfiguration in a cellular communications network |
US5220565A (en) * | 1991-05-30 | 1993-06-15 | Motorola, Inc. | Selective transmission of encoded voice information representing silence |
JPH06508008A (en) * | 1991-06-12 | 1994-09-08 | ヒューレット・パッカード・カンパニー | Method and apparatus for testing packet-based networks |
US5273437A (en) | 1991-06-27 | 1993-12-28 | Johnson & Johnson | Audience participation system |
US5668880A (en) * | 1991-07-08 | 1997-09-16 | Alajajian; Philip Michael | Inter-vehicle personal data communications device |
SE519357C2 (en) | 1991-08-29 | 2003-02-18 | Ericsson Telefon Ab L M | Cellular radio telephone communication system for multimode type mobile radio telephone stations |
US5323485A (en) * | 1991-08-29 | 1994-06-21 | Abb Flakt, Inc. | Paint baking oven having a bring-up zone utilizing short and medium wave infrared lamps |
DE69227736T2 (en) | 1991-08-30 | 1999-04-29 | Nec Corp., Tokio/Tokyo | Insert the "virtual child path is empty" signal using the time slot switching method |
US5850385A (en) * | 1991-09-24 | 1998-12-15 | Kabushiki Kaisha Toshiba | Cell loss rate sensitive routing and call admission control method |
US5268933A (en) * | 1991-09-27 | 1993-12-07 | Motorola, Inc. | Data packet alignment in a communication system |
EP1246404B1 (en) * | 1991-10-01 | 2006-03-22 | Broadcom Corporation | A radio frequency local area network |
US5737395A (en) * | 1991-10-28 | 1998-04-07 | Centigram Communications Corporation | System and method for integrating voice, facsimile and electronic mail data through a personal computer |
US5222152A (en) * | 1991-11-19 | 1993-06-22 | Digital Biometrics, Inc. | Portable fingerprint scanning apparatus for identification verification |
GB2261799B (en) * | 1991-11-23 | 1995-04-19 | Dowty Communications Ltd | Packet transmission system |
DE69230716T2 (en) * | 1991-11-25 | 2000-12-28 | Motorola, Inc. | Reduced interference due to frequency division in cellular communication systems |
US5301356A (en) * | 1991-12-10 | 1994-04-05 | Telefonaktiebolaget L M Ericsson | Prioritization between handoff and new call requests in a cellular communications system |
BR9207033A (en) * | 1992-01-09 | 1995-12-05 | Supra Prod Inc | Security entry system with radio communication |
US5502726A (en) * | 1992-01-31 | 1996-03-26 | Nellcor Incorporated | Serial layered medical network |
US5546077A (en) * | 1992-01-31 | 1996-08-13 | Uniden America Corporation | Remotely programmable pager |
US5564077A (en) | 1992-02-05 | 1996-10-08 | Kabushiki Kaisha Toshiba | Dual mode radio communication apparatus having function of selectively designating analog or digital mode |
US5260988A (en) | 1992-02-06 | 1993-11-09 | Motorola, Inc. | Apparatus and method for alternative radiotelephone system selection |
US5745532A (en) * | 1992-03-12 | 1998-04-28 | Ntp Incorporated | System for wireless transmission and receiving of information and method of operation thereof |
US5710798A (en) * | 1992-03-12 | 1998-01-20 | Ntp Incorporated | System for wireless transmission and receiving of information and method of operation thereof |
US5717725A (en) * | 1992-03-12 | 1998-02-10 | Ntp Incorporated | System for wireless transmission and receiving of information through a computer bus interface and method of operation |
US5231646A (en) * | 1992-03-16 | 1993-07-27 | Kyros Corporation | Communications system |
JPH05268138A (en) * | 1992-03-19 | 1993-10-15 | Nec Corp | Portable telephone |
US5384807A (en) * | 1992-07-02 | 1995-01-24 | Motorola, Inc. | ADPCM transcoder with integral tone generation and method therefor |
US5373501A (en) * | 1992-07-10 | 1994-12-13 | C & P Of Virginia | Telecommunications switching network including improved port selector and control circuitry |
EP0582373B1 (en) * | 1992-07-17 | 1999-10-06 | Sun Microsystems, Inc. | Method and apparatus for implementing self-organization in a wireless local area network |
JP2594032Y2 (en) * | 1992-08-06 | 1999-04-19 | ミノルタ株式会社 | Viewfinder frame switching mechanism for SLR cameras |
JPH0685745A (en) * | 1992-09-02 | 1994-03-25 | Toshiba Corp | Dual mode radio communication equipment |
US5392406A (en) * | 1992-09-18 | 1995-02-21 | 3Com Corporation | DMA data path aligner and network adaptor utilizing same |
US5307405A (en) * | 1992-09-25 | 1994-04-26 | Qualcomm Incorporated | Network echo canceller |
US5339352A (en) * | 1992-10-01 | 1994-08-16 | Bell Atlantic Network Services, Inc. | Directory assistance call completion via mobile systems |
US5579487A (en) | 1992-10-02 | 1996-11-26 | Teletransaction, Inc. | Portable work slate computer with multiple docking positions for interchangeably receiving removable modules |
US5382379A (en) * | 1992-10-07 | 1995-01-17 | Chisso Corporation | Cyclohexane derivative |
JP2897551B2 (en) * | 1992-10-12 | 1999-05-31 | 日本電気株式会社 | Audio decoding device |
US5287384A (en) * | 1992-10-15 | 1994-02-15 | Lxe Inc. | Frequency hopping spread spectrum data communications system |
DE69322072D1 (en) * | 1992-10-15 | 1998-12-17 | Western Atlas Int Inc | SEISMIC SOURCE ARRANGEMENT USING A SMALL DIAMETER HOSE BUNDLE |
CA2107820A1 (en) | 1992-10-16 | 1994-04-17 | Keith Daniel O'neill | Low-power wireless system for telephone services |
US5678172A (en) | 1992-10-26 | 1997-10-14 | Eon Corporation | Simulated voice packet messaging |
JP3559579B2 (en) * | 1992-11-12 | 2004-09-02 | ヒューレット・パッカード・カンパニー | Interface device |
EP0680678A1 (en) | 1992-11-16 | 1995-11-08 | WEEKS, Stephen | Information distribution systems, particularly tour guide systems |
US5701120A (en) * | 1992-12-13 | 1997-12-23 | Siemens Business Communication Systems, Inc. | Partitioned point-to-point communications networks |
US5335276A (en) | 1992-12-16 | 1994-08-02 | Texas Instruments Incorporated | Communication system and methods for enhanced information transfer |
SE501373C2 (en) | 1992-12-17 | 1995-01-30 | Televerket | Device at communication networks |
KR960003505B1 (en) * | 1992-12-29 | 1996-03-14 | 재단법인 한국전자통신연구소 | Atm multiplexing processor |
US5325419A (en) * | 1993-01-04 | 1994-06-28 | Ameritech Corporation | Wireless digital personal communications system having voice/data/image two-way calling and intercell hand-off |
US5463616A (en) * | 1993-01-07 | 1995-10-31 | Advanced Protocol Systems, Inc. | Method and apparatus for establishing a full-duplex, concurrent, voice/non-voice connection between two sites |
US7082106B2 (en) * | 1993-01-08 | 2006-07-25 | Multi-Tech Systems, Inc. | Computer-based multi-media communications system and method |
US5453986A (en) | 1993-01-08 | 1995-09-26 | Multi-Tech Systems, Inc. | Dual port interface for a computer-based multifunction personal communication system |
US5617423A (en) * | 1993-01-08 | 1997-04-01 | Multi-Tech Systems, Inc. | Voice over data modem with selectable voice compression |
US5452289A (en) * | 1993-01-08 | 1995-09-19 | Multi-Tech Systems, Inc. | Computer-based multifunction personal communications system |
CA2132026C (en) * | 1993-03-04 | 2007-10-30 | Per Anders Lennart Stein | Modular radio communications system |
US5327486A (en) * | 1993-03-22 | 1994-07-05 | Bell Communications Research, Inc. | Method and system for managing telecommunications such as telephone calls |
US5646983A (en) * | 1993-03-25 | 1997-07-08 | U.S. Robotics Access Corp. | Host computer digital signal processing system for communicating over voice-grade telephone channels |
US5438565A (en) * | 1993-03-31 | 1995-08-01 | At&T Corp. | Packet switch to provide code division, multiple access cellular service |
US5506847A (en) * | 1993-04-26 | 1996-04-09 | Kabushiki Kaisha Toshiba | ATM-lan system using broadcast channel for transferring link setting and chaining requests |
US5796727A (en) | 1993-04-30 | 1998-08-18 | International Business Machines Corporation | Wide-area wireless lan access |
US5373503A (en) | 1993-04-30 | 1994-12-13 | Information Technology, Inc. | Group randomly addressed polling method |
US5696903A (en) * | 1993-05-11 | 1997-12-09 | Norand Corporation | Hierarchical communications system using microlink, data rate switching, frequency hopping and vehicular local area networking |
US5404394A (en) * | 1993-05-24 | 1995-04-04 | Comsat Corporation | Secure communication system |
CA2232203A1 (en) * | 1993-05-28 | 1994-11-29 | Royal Building Systems (Cdn) Limited | Thermoplastic structural components and structures formed therefrom |
AU7206994A (en) | 1993-06-09 | 1995-01-03 | Intelligence At Large, Inc. | Method and apparatus for multiple media digital communication system |
DE4319187A1 (en) * | 1993-06-09 | 1994-12-15 | Bayer Ag | Casting investment materials |
WO1995001020A1 (en) * | 1993-06-25 | 1995-01-05 | Xircom, Incorporated | Virtual carrier detection for wireless local area network with distributed control |
US5490134A (en) * | 1993-06-29 | 1996-02-06 | Southern California Edison Company | Versatile communications controller |
US5666534A (en) | 1993-06-29 | 1997-09-09 | Bull Hn Information Systems Inc. | Method and appartus for use by a host system for mechanizing highly configurable capabilities in carrying out remote support for such system |
US5414455A (en) * | 1993-07-07 | 1995-05-09 | Digital Equipment Corporation | Segmented video on demand system |
US5392251A (en) * | 1993-07-13 | 1995-02-21 | Micron Semiconductor, Inc. | Controlling dynamic memory refresh cycle time |
US5477539A (en) | 1993-07-23 | 1995-12-19 | Ericsson Inc. | Narrow band simulcast system having low speed data distribution |
US5521925A (en) * | 1993-09-09 | 1996-05-28 | Hughes Aircraft Company | Method and apparatus for providing mixed voice and data communication in a time division multiple access radio communication system |
US5412660A (en) * | 1993-09-10 | 1995-05-02 | Trimble Navigation Limited | ISDN-to-ISDN communication via satellite microwave radio frequency communications link |
JP3192039B2 (en) | 1993-09-13 | 2001-07-23 | 株式会社日立製作所 | Traffic control method and network control system |
US5446736A (en) | 1993-10-07 | 1995-08-29 | Ast Research, Inc. | Method and apparatus for connecting a node to a wireless network using a standard protocol |
US5422656A (en) * | 1993-11-01 | 1995-06-06 | International Business Machines Corp. | Personal communicator having improved contrast control for a liquid crystal, touch sensitive display |
JP3003839B2 (en) | 1993-11-08 | 2000-01-31 | エヌ・ティ・ティ移動通信網株式会社 | CDMA communication method and apparatus |
US5434856A (en) * | 1993-11-15 | 1995-07-18 | Motorola, Inc. | Method for monitoring communication talkgroups |
CA2152609C (en) * | 1993-11-19 | 2000-12-12 | Richard B. Kline | Method for adaptive smoothing delay for packet voice applications |
US5602836A (en) * | 1993-11-24 | 1997-02-11 | Lucent Technologies Inc. | Multiple access cellular communication with circular interleaving and reduced dropped-packet runlengths |
JP2856050B2 (en) * | 1993-11-30 | 1999-02-10 | 日本電気株式会社 | Routing control method |
USH1641H (en) * | 1993-11-30 | 1997-04-01 | Gte Mobile Communications Service Corporation | Connection of mobile devices to heterogenous networks |
US5392281A (en) * | 1993-12-13 | 1995-02-21 | At&T Corp. | Control of hybrid packet rings |
US5761621A (en) * | 1993-12-15 | 1998-06-02 | Spectrum Information Technologies, Inc. | Apparatus and methods for networking omni-modal radio devices |
USRE38787E1 (en) * | 1993-12-15 | 2005-08-30 | Mlr, Llc | Apparatus and methods for networking omni-modal radio devices |
JPH07170288A (en) * | 1993-12-15 | 1995-07-04 | Hitachi Ltd | Voice communication system and voice communication method |
US6934558B1 (en) * | 1993-12-15 | 2005-08-23 | Mlr, Llc | Adaptive omni-modal radio apparatus and methods |
US5483530A (en) * | 1993-12-16 | 1996-01-09 | International Business Machines Corporation | System and method for communicating with digital and analog devices via a single digital interface |
SE515361C2 (en) * | 1993-12-22 | 2001-07-23 | Eritel Ab | Transmission of spoken messages |
EP0660569A1 (en) * | 1993-12-22 | 1995-06-28 | International Business Machines Corporation | Method and system for improving the processing time of the path selection in a high speed packet switching network |
US5434854A (en) | 1993-12-27 | 1995-07-18 | At&T Corp. | System for communicating digital cellular data between a cell site and a switching system or another cell site |
US5426118A (en) * | 1993-12-30 | 1995-06-20 | Allergan, Inc. | [4-(1,2-epoxycyclohexanyl)but-3-en-1-ynyl]aromatic and heteroaromatic acids and derivatives having retinoid-like biological activity |
US5428608A (en) * | 1993-12-30 | 1995-06-27 | At&T Corp. | Call connection technique |
US5465253A (en) * | 1994-01-04 | 1995-11-07 | Motorola, Inc. | Method and apparatus for demand-assigned reduced-rate out-of-band signaling channel |
DE69434503T2 (en) * | 1994-01-11 | 2006-05-18 | Ntt Docomo Inc. | Mobile radio transmission system |
US5533019A (en) | 1994-01-31 | 1996-07-02 | Motorola, Inc. | Packet data in an analog cellular radiotelephone system |
US5400338A (en) * | 1994-02-08 | 1995-03-21 | Metricom, Inc. | Parasitic adoption of coordinate-based addressing by roaming node |
US5594782A (en) | 1994-02-24 | 1997-01-14 | Gte Mobile Communications Service Corporation | Multiple mode personal wireless communications system |
US6690923B1 (en) * | 1994-03-02 | 2004-02-10 | Telular Corp. | Self-diagnostic system for cellular-transceiver systems with remote-reporting capabilities |
US6134312A (en) | 1994-03-02 | 2000-10-17 | Peoples; John Terrance | Method for remotely controlling a telephone loop/channel from another telephone loop/channel |
US5491739A (en) * | 1994-03-04 | 1996-02-13 | Motorola, Inc. | Methods of establishing a two-way call in a radio communication system |
US5577105A (en) * | 1994-03-11 | 1996-11-19 | U.S. Robotics, Inc. | Telephone call routing and switching techniques for data communications |
JP2677191B2 (en) * | 1994-03-15 | 1997-11-17 | 日本電気株式会社 | CDMA communication system |
JPH07264279A (en) | 1994-03-18 | 1995-10-13 | Nec Corp | Echo canceller |
US5414731A (en) * | 1994-03-18 | 1995-05-09 | International Business Machines Corporation | Command set and procedure for synchronization of frequency hopping control clocks |
US5505726A (en) * | 1994-03-21 | 1996-04-09 | Dusa Pharmaceuticals, Inc. | Article of manufacture for the photodynamic therapy of dermal lesion |
US5602846A (en) * | 1994-04-08 | 1997-02-11 | Paradyne Corporation | Simultaneous voice and data call establishment using a simultaneous voice and data modem pool and private branch exchange facilities |
US5793762A (en) | 1994-04-12 | 1998-08-11 | U S West Technologies, Inc. | System and method for providing packet data and voice services to mobile subscribers |
US5534937A (en) | 1994-04-14 | 1996-07-09 | Motorola, Inc. | Minimum-delay jitter smoothing device and method for packet video communications |
US5757801A (en) * | 1994-04-19 | 1998-05-26 | Multi-Tech Systems, Inc. | Advanced priority statistical multiplexer |
US5682386A (en) * | 1994-04-19 | 1997-10-28 | Multi-Tech Systems, Inc. | Data/voice/fax compression multiplexer |
US5729544A (en) * | 1994-05-09 | 1998-03-17 | Motorola, Inc. | Method for transmitting data packets based on message type |
JP3247540B2 (en) | 1994-05-12 | 2002-01-15 | 株式会社日立製作所 | Packetized communication device and switching device |
US5481533A (en) * | 1994-05-12 | 1996-01-02 | Bell Communications Research, Inc. | Hybrid intra-cell TDMA/inter-cell CDMA for wireless networks |
US5742639A (en) * | 1994-05-13 | 1998-04-21 | Westinghouse Electric Corporation | Mobile terminal apparatus and method for a satellite communication system |
US5535207A (en) | 1994-05-20 | 1996-07-09 | Motorola, Inc. | Method of dynamically allocating time slots on a packet data communications channel |
JPH07326950A (en) * | 1994-06-02 | 1995-12-12 | Fujitsu Ltd | Skewness adjusting device for timing signal and its method |
US5574979A (en) * | 1994-06-03 | 1996-11-12 | Norand Corporation | Periodic interference avoidance in a wireless radio frequency communication system |
US5461611A (en) | 1994-06-07 | 1995-10-24 | International Business Machines Corporation | Quality of service management for source routing multimedia packet networks |
US5581596A (en) | 1994-06-13 | 1996-12-03 | U S West Technologies, Inc. | Method for controlling call processing in a microcellular personal communications services system |
US5506848A (en) * | 1994-06-22 | 1996-04-09 | At&T Corp. | Demand assignment system and method for mobile users in a community of interest |
US5481539A (en) * | 1994-06-29 | 1996-01-02 | General Electric Company | Datagram communication service over a cellular telephone network |
US5459722A (en) * | 1994-06-30 | 1995-10-17 | At&T Ipm Corp. | Asynchronous transfer mode (ATM) transport of voice-band signals |
JPH0823536A (en) * | 1994-07-07 | 1996-01-23 | Canon Inc | Image processor |
US5600538A (en) * | 1994-07-08 | 1997-02-04 | Apple Computer, Inc. | Personal computer and housing structure having circuit board removable horizontally and sub-chassis removable from the top thereof |
GB2291571A (en) * | 1994-07-19 | 1996-01-24 | Ibm | Text to speech system; acoustic processor requests linguistic processor output |
US5649010A (en) | 1994-07-20 | 1997-07-15 | Siemens Schweiz Ag | Send filter for an echo canceler |
JP2586441B2 (en) | 1994-07-27 | 1997-02-26 | 日本電気株式会社 | Mobile phone |
US5570367A (en) * | 1994-07-29 | 1996-10-29 | Lucent Technologies Inc. | Asymmetric protocol for wireless communications |
CA2129199C (en) * | 1994-07-29 | 1999-07-20 | Roger Y.M. Cheung | Method and apparatus for bridging wireless lan to a wired lan |
US5825755A (en) * | 1994-08-10 | 1998-10-20 | Bay Networks, Inc. | Method and apparatus for switching between full-duplex and half-duplex CSMA/CD systems |
US5742734A (en) | 1994-08-10 | 1998-04-21 | Qualcomm Incorporated | Encoding rate selection in a variable rate vocoder |
JP3483221B2 (en) * | 1994-08-18 | 2004-01-06 | 日本板硝子株式会社 | Optical module |
US5611055A (en) * | 1994-09-27 | 1997-03-11 | Novalink Technologies | Method and apparatus for implementing a PCMCIA auxiliary port connector for selectively communicating with peripheral devices |
US5550861A (en) * | 1994-09-27 | 1996-08-27 | Novalink Technologies, Inc. | Modular PCMCIA modem and pager |
US5659698A (en) | 1994-11-01 | 1997-08-19 | Motorola, Inc. | Method and apparatus for generating a circular buffer address in integrated circuit that performs multiple communications tasks |
US5566225A (en) * | 1994-11-21 | 1996-10-15 | Lucent Technologies Inc. | Wireless data communications system for detecting a disabled condition and simulating a functioning mode in response to detection |
US5539729A (en) * | 1994-12-09 | 1996-07-23 | At&T Corp. | Method for overload control in a packet switch that processes packet streams having different priority levels |
US5526353A (en) * | 1994-12-20 | 1996-06-11 | Henley; Arthur | System and method for communication of audio data over a packet-based network |
US5761618A (en) * | 1994-12-22 | 1998-06-02 | Bell Atlantic Mobile Systems, Inc. | Updating technique for downloading new system identification (SID) list into a handset |
CA2139081C (en) * | 1994-12-23 | 1999-02-02 | Alastair Gordon | Unified messaging system and method |
US5566170A (en) | 1994-12-29 | 1996-10-15 | Storage Technology Corporation | Method and apparatus for accelerated packet forwarding |
US5642348A (en) * | 1994-12-30 | 1997-06-24 | Lucent Technologies Inc. | Access director interface for narrowband/broadband information distribution network |
US5857075A (en) * | 1995-01-11 | 1999-01-05 | Sony Corporation | Method and integrated circuit for high-bandwidth network server interfacing to a local area network |
US5956673A (en) | 1995-01-25 | 1999-09-21 | Weaver, Jr.; Lindsay A. | Detection and bypass of tandem vocoding using detection codes |
JP3169523B2 (en) | 1995-01-27 | 2001-05-28 | 三菱電機株式会社 | Personal communication device |
US5550893A (en) | 1995-01-31 | 1996-08-27 | Nokia Mobile Phones Limited | Speech compensation in dual-mode telephone |
US6073030A (en) * | 1995-02-13 | 2000-06-06 | Intel Corporation | Use of RSSI indication for improved data transmission over amps network |
US5623485A (en) * | 1995-02-21 | 1997-04-22 | Lucent Technologies Inc. | Dual mode code division multiple access communication system and method |
US5915214A (en) * | 1995-02-23 | 1999-06-22 | Reece; Richard W. | Mobile communication service provider selection system |
US5742640A (en) * | 1995-03-07 | 1998-04-21 | Diva Communications, Inc. | Method and apparatus to improve PSTN access to wireless subscribers using a low bit rate system |
US5557664A (en) | 1995-03-31 | 1996-09-17 | At&T | Calling party-paid wireless telephone service |
US5635980A (en) * | 1995-04-04 | 1997-06-03 | Bell Communications Research, Inc. | System and method for customer premises broadband interface with on-hook alerting |
US5524145A (en) * | 1995-04-06 | 1996-06-04 | Bell Atlantic Network Services, Inc. | Incoming call completion threshold restriction |
US5613190A (en) * | 1995-05-01 | 1997-03-18 | Bell Atlantic Network Services, Inc. | Customer premise wireless distribution of audio-video, control signals and voice |
US5650994A (en) * | 1995-05-16 | 1997-07-22 | Bell Atlantic Network Services, Inc. | Operation support system for service creation and network provisioning for video dial tone networks |
US5592541A (en) * | 1995-05-31 | 1997-01-07 | Southwestern Bell Technology Resources, Inc. | Apparatus and method for forwarding incoming calls |
US5717737A (en) * | 1995-06-01 | 1998-02-10 | Padcom, Inc. | Apparatus and method for transparent wireless communication between a remote device and a host system |
GB2301747A (en) * | 1995-06-02 | 1996-12-11 | Dsc Communications | Remotely programmable subscriber terminal in a wireless telecommunications system |
US5758256A (en) * | 1995-06-07 | 1998-05-26 | Hughes Electronics Corporation | Method of transporting speech information in a wireless cellular system |
US5723984A (en) * | 1996-06-07 | 1998-03-03 | Advanced Micro Devices, Inc. | Field programmable gate array (FPGA) with interconnect encoding |
US6366771B1 (en) * | 1995-06-21 | 2002-04-02 | Arron S. Angle | Wireless communication network having voice and data communication capability |
US5742592A (en) * | 1995-09-01 | 1998-04-21 | Motorola, Inc. | Method for communicating data in a wireless communication system |
US5881142A (en) * | 1995-07-18 | 1999-03-09 | Jetstream Communications, Inc. | Integrated communications control device for a small office configured for coupling within a scalable network |
US5610617A (en) * | 1995-07-18 | 1997-03-11 | Lucent Technologies Inc. | Directive beam selectivity for high speed wireless communication networks |
US5764736A (en) | 1995-07-20 | 1998-06-09 | National Semiconductor Corporation | Method for switching between a data communication session and a voice communication session |
US5764741A (en) * | 1995-07-21 | 1998-06-09 | Callmanage Ltd. | Least cost rooting system |
US5757899A (en) * | 1995-07-21 | 1998-05-26 | Boulware; Joni R. | Call screening using subscriber specified timers and schedules |
DE19526979A1 (en) * | 1995-07-25 | 1997-01-30 | Basf Ag | Process for the production of rigid foams based on isocyanate |
US5890055A (en) * | 1995-07-28 | 1999-03-30 | Lucent Technologies Inc. | Method and system for connecting cells and microcells in a wireless communications network |
US5754542A (en) | 1995-07-31 | 1998-05-19 | Qualcomm Incorporated | Method and apparatus for system determination in a multi-mode subscriber station |
US6512525B1 (en) * | 1995-08-07 | 2003-01-28 | Apple Computer, Inc. | Multiple personas for mobile devices |
US5818836A (en) * | 1995-08-09 | 1998-10-06 | Duval; Stephen C. | Method and apparatus for anonymous voice communication using an online data service |
US5640002A (en) * | 1995-08-15 | 1997-06-17 | Ruppert; Jonathan Paul | Portable RF ID tag and barcode reader |
US5850602A (en) * | 1995-08-15 | 1998-12-15 | Tisdale; William R. | Communication protocol for mobile earth terminal communication device used in mobile satellite communication system |
US5742840A (en) * | 1995-08-16 | 1998-04-21 | Microunity Systems Engineering, Inc. | General purpose, multiple precision parallel operation, programmable media processor |
US5610910A (en) | 1995-08-17 | 1997-03-11 | Northern Telecom Limited | Access to telecommunications networks in multi-service environment |
US6072994A (en) * | 1995-08-31 | 2000-06-06 | Northrop Grumman Corporation | Digitally programmable multifunction radio system architecture |
US6132306A (en) | 1995-09-06 | 2000-10-17 | Cisco Systems, Inc. | Cellular communication system with dedicated repeater channels |
DE69620897T2 (en) * | 1995-09-15 | 2002-11-28 | Robert T. Kulakowski | INTERNET FACSIMILE MACHINE |
US5737331A (en) * | 1995-09-18 | 1998-04-07 | Motorola, Inc. | Method and apparatus for conveying audio signals using digital packets |
US5745556A (en) * | 1995-09-22 | 1998-04-28 | At&T Corp. | Interactive and information data services telephone billing system |
US6108704A (en) * | 1995-09-25 | 2000-08-22 | Netspeak Corporation | Point-to-point internet protocol |
US5774461A (en) * | 1995-09-27 | 1998-06-30 | Lucent Technologies Inc. | Medium access control and air interface subsystem for an indoor wireless ATM network |
US5842134A (en) | 1995-09-28 | 1998-11-24 | Ericsson Inc. | Auto-alignment of clear voice and low speed digital data signals in a simulcast system |
US5953319A (en) | 1995-09-29 | 1999-09-14 | Amsc Subsidiary Corporation | Wide area mobile communication networks with multiple routing mode options |
US6292662B1 (en) * | 1995-09-29 | 2001-09-18 | Qualcomm Incorporated | Method and system for processing telephone calls involving two digital wireless subscriber units that avoid double vocoding |
US5631900A (en) * | 1995-09-29 | 1997-05-20 | Crystal Semiconductor | Double-Talk detector for echo canceller |
JPH09134319A (en) * | 1995-10-03 | 1997-05-20 | Sony Electron Inc | User interface for personal communication routing system and rule processing |
EP0767544A3 (en) * | 1995-10-04 | 2002-02-27 | Interuniversitair Micro-Elektronica Centrum Vzw | Programmable modem using spread spectrum communication |
US5737328A (en) * | 1995-10-04 | 1998-04-07 | Aironet Wireless Communications, Inc. | Network communication system with information rerouting capabilities |
US7336649B1 (en) * | 1995-12-20 | 2008-02-26 | Verizon Business Global Llc | Hybrid packet-switched and circuit-switched telephony system |
US5790538A (en) * | 1996-01-26 | 1998-08-04 | Telogy Networks, Inc. | System and method for voice Playout in an asynchronous packet network |
US5912882A (en) | 1996-02-01 | 1999-06-15 | Qualcomm Incorporated | Method and apparatus for providing a private communication system in a public switched telephone network |
KR100892950B1 (en) * | 1996-02-09 | 2009-04-09 | 아이-링크 시스템즈, 아이엔씨. | Voice internet transmission system |
US6553410B2 (en) * | 1996-02-27 | 2003-04-22 | Inpro Licensing Sarl | Tailoring data and transmission protocol for efficient interactive data transactions over wide-area networks |
JP3102342B2 (en) * | 1996-02-27 | 2000-10-23 | 三菱電機株式会社 | Deep dosimeter |
US7136475B1 (en) | 1999-07-27 | 2006-11-14 | Aspect Communications Corporation | Call Management system with call control from user workstation computers |
US5862339A (en) * | 1996-07-09 | 1999-01-19 | Webtv Networks, Inc. | Client connects to an internet access provider using algorithm downloaded from a central server based upon client's desired criteria after disconnected from the server |
US5960074A (en) * | 1996-09-23 | 1999-09-28 | Curtis Clark | Mobile tele-computer network for motion picture, television and tv advertising production |
US6721306B1 (en) * | 1997-03-11 | 2004-04-13 | Verizon Services Corp. | Public wireless/cordless internet gateway |
US6046991A (en) * | 1997-04-09 | 2000-04-04 | Aloha Networks, Inc. | TDM variable broadcast energy transmitter |
US6405049B2 (en) | 1997-08-05 | 2002-06-11 | Symbol Technologies, Inc. | Portable data terminal and cradle |
US6134235A (en) * | 1997-10-08 | 2000-10-17 | At&T Corp. | Pots/packet bridge |
IL122299A (en) | 1997-11-25 | 2003-11-23 | Broadcom Corp | Video encoding device |
US6229526B1 (en) * | 1997-12-18 | 2001-05-08 | International Business Machines Corporation | Method and system for simultaneous operation of multiple handheld IR control devices in a data processing system |
US20020012353A1 (en) * | 1997-12-31 | 2002-01-31 | Irwin Gerszberg | Isd controlled set-top box |
US6345047B1 (en) * | 1998-06-12 | 2002-02-05 | Northern Telecom Limited | Computer telephony adapter and method |
EP0975123A1 (en) * | 1998-07-15 | 2000-01-26 | Telefonaktiebolaget L M Ericsson (Publ) | Communication device and method for reliable and low-delay packet transmission |
US6763017B1 (en) * | 1998-09-30 | 2004-07-13 | Cisco Technology, Inc. | Method and apparatus for voice port hunting of remote telephone extensions using voice over packet-data-network systems (VOPS) |
US6553635B1 (en) * | 1998-10-15 | 2003-04-29 | Clarence F. Howell | Button snap flap closure |
US6433121B1 (en) * | 1998-11-06 | 2002-08-13 | Pittsburg State University | Method of making natural oil-based polyols and polyurethanes therefrom |
EP1145430B1 (en) | 1998-11-12 | 2004-09-15 | Broadcom Corporation | Integrated tuner architecture |
US7423983B1 (en) * | 1999-09-20 | 2008-09-09 | Broadcom Corporation | Voice and data exchange over a packet based network |
US7110390B1 (en) * | 1999-04-20 | 2006-09-19 | Mci, Inc. | Communication controller for providing multiple access using a single telephone line |
US6512764B1 (en) * | 1999-07-16 | 2003-01-28 | General Bandwidth Inc. | Method and apparatus for providing voice signals to and from a telecommunications switch |
US6580727B1 (en) * | 1999-08-20 | 2003-06-17 | Texas Instruments Incorporated | Element management system for a digital subscriber line access multiplexer |
US7161931B1 (en) * | 1999-09-20 | 2007-01-09 | Broadcom Corporation | Voice and data exchange over a packet based network |
US6937713B1 (en) * | 1999-12-30 | 2005-08-30 | At&T Corp. | IP call forward profile |
US6816469B1 (en) * | 1999-12-30 | 2004-11-09 | At&T Corp. | IP conference call waiting |
US6690675B1 (en) * | 1999-12-30 | 2004-02-10 | At&T Corp. | User programmable fail-proof IP hotline/warm-line |
US6826173B1 (en) * | 1999-12-30 | 2004-11-30 | At&T Corp. | Enhanced subscriber IP alerting |
US6680935B1 (en) * | 1999-12-30 | 2004-01-20 | At&T Corp. | Anonymous call rejection |
US7120139B1 (en) * | 1999-12-30 | 2006-10-10 | At&T Corp. | Broadband cable telephony network architecture IP ITN network architecture reference model |
US6671262B1 (en) * | 1999-12-30 | 2003-12-30 | At&T Corp. | Conference server for automatic x-way call port expansion feature |
US6633635B2 (en) | 1999-12-30 | 2003-10-14 | At&T Corp. | Multiple call waiting in a packetized communication system |
US6889321B1 (en) * | 1999-12-30 | 2005-05-03 | At&T Corp. | Protected IP telephony calls using encryption |
US6775273B1 (en) * | 1999-12-30 | 2004-08-10 | At&T Corp. | Simplified IP service control |
US6775267B1 (en) * | 1999-12-30 | 2004-08-10 | At&T Corp | Method for billing IP broadband subscribers |
US6678265B1 (en) * | 1999-12-30 | 2004-01-13 | At&T Corp. | Local number portability database for on-net IP call |
US6728239B1 (en) * | 1999-12-30 | 2004-04-27 | At&T Corp. | Scaleable network server for low cost PBX |
US7075918B1 (en) * | 1999-12-30 | 2006-07-11 | At&T Corp. | BRG with PBX capabilities |
US7068668B2 (en) * | 2000-01-07 | 2006-06-27 | Feuer Donald S | Method and apparatus for interfacing a public switched telephone network and an internet protocol network for multi-media communication |
US6857132B1 (en) * | 2000-01-14 | 2005-02-15 | Terayon Communication Systems, Inc. | Head end multiplexer to select and transmit video-on-demand and other requested programs and services |
JP4068780B2 (en) * | 2000-02-24 | 2008-03-26 | 富士通株式会社 | COMMUNICATION STATUS NOTIFICATION DEVICE, COMMUNICATION STATUS DISPLAY DEVICE, COMMUNICATION STATUS NOTIFICATION METHOD, AND MEDIUM CONTAINING COMMUNICATION STATUS NOTIFICATION PROGRAM IN VoIP COMMUNICATION SYSTEM |
US20010036176A1 (en) * | 2000-02-28 | 2001-11-01 | Girard Gregory D. | Apparatus and method for telephony service interface to software switch controller |
US6680923B1 (en) | 2000-05-23 | 2004-01-20 | Calypso Wireless, Inc. | Communication system and method |
WO2002035816A1 (en) * | 2000-10-26 | 2002-05-02 | Mitsubishi Denki Kabushiki Kaisha | Internet telephone network system, network access method and talking device adapter |
US6550510B2 (en) * | 2001-03-16 | 2003-04-22 | Honeywell International Inc. | Optimized demountable flange and retaining ring geometry for aircraft wheels |
US20020176378A1 (en) * | 2001-05-22 | 2002-11-28 | Hamilton Thomas E. | Platform and method for providing wireless data services |
JP3840921B2 (en) * | 2001-06-13 | 2006-11-01 | 株式会社デンソー | Printed circuit board and manufacturing method thereof |
JP4664543B2 (en) * | 2001-07-26 | 2011-04-06 | 株式会社東芝 | Electronic device and mounting method of wireless antenna |
EP1345395B1 (en) | 2002-03-15 | 2013-05-08 | Alcatel Lucent | Method for intercepting communication connections |
US20040054760A1 (en) * | 2002-05-31 | 2004-03-18 | Ewing Richard E. | Deployable telemedicine system |
AU2003242001B2 (en) * | 2002-05-31 | 2008-10-16 | Softbank Corp. | Terminal connection device, connection control device, and multi-function telephone terminal |
US7346071B2 (en) * | 2003-01-13 | 2008-03-18 | Bareis Bernard F | Broadband multi-drop local network, interface and method for multimedia access |
US7392399B2 (en) * | 2003-05-05 | 2008-06-24 | Sun Microsystems, Inc. | Methods and systems for efficiently integrating a cryptographic co-processor |
US7058424B2 (en) * | 2004-01-20 | 2006-06-06 | Lucent Technologies Inc. | Method and apparatus for interconnecting wireless and wireline networks |
TW201136294A (en) * | 2009-10-28 | 2011-10-16 | Sony Corp | Signal processing apparatus, signal processing method, computer program, image processing apparatus, and image capturing apparatus |
-
1998
- 1998-03-10 US US09/037,535 patent/US6389010B1/en not_active Expired - Lifetime
-
2002
- 2002-05-08 US US10/141,506 patent/US6850510B2/en not_active Expired - Lifetime
-
2003
- 2003-10-09 US US10/682,591 patent/US7366151B2/en not_active Expired - Fee Related
- 2003-11-05 US US10/701,865 patent/US20040114567A1/en not_active Abandoned
- 2003-11-12 US US10/706,425 patent/US20040145775A1/en not_active Abandoned
-
2004
- 2004-01-16 US US10/760,322 patent/US8467376B2/en not_active Expired - Fee Related
- 2004-01-16 US US10/760,167 patent/US7580384B2/en not_active Expired - Fee Related
- 2004-01-16 US US10/759,969 patent/US7697467B2/en not_active Expired - Fee Related
- 2004-01-16 US US10/760,035 patent/US8149825B2/en not_active Expired - Fee Related
- 2004-01-16 US US10/760,057 patent/US7633934B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,873 patent/US7933252B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,375 patent/US7460507B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,437 patent/US20040165573A1/en not_active Abandoned
- 2004-02-20 US US10/784,005 patent/US6961312B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,883 patent/US7760703B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,477 patent/US7646743B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,587 patent/US8238264B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,572 patent/US7920553B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,888 patent/US7586861B2/en not_active Expired - Fee Related
- 2004-02-20 US US10/783,894 patent/US20040160913A1/en not_active Abandoned
- 2004-03-16 US US10/801,472 patent/US7715375B2/en not_active Expired - Fee Related
- 2004-04-08 US US10/822,447 patent/US7688811B2/en not_active Expired - Fee Related
- 2004-04-12 US US10/822,462 patent/US7142535B2/en not_active Expired - Fee Related
- 2004-05-05 US US10/839,373 patent/US8018907B2/en not_active Expired - Fee Related
-
2005
- 2005-07-18 US US11/183,704 patent/US7912016B2/en not_active Expired - Fee Related
-
2006
- 2006-11-28 US US11/604,976 patent/US7586907B2/en not_active Expired - Fee Related
-
2008
- 2008-03-13 US US12/048,017 patent/US7916706B2/en not_active Expired - Fee Related
- 2008-06-18 US US12/141,505 patent/US8228879B2/en not_active Expired - Fee Related
- 2008-10-14 US US12/251,208 patent/US7899007B2/en not_active Expired - Fee Related
- 2008-10-29 US US12/260,850 patent/US8139749B2/en not_active Expired - Fee Related
-
2009
- 2009-08-25 US US12/547,348 patent/US8194595B2/en not_active Expired - Fee Related
- 2009-09-08 US US12/555,680 patent/US7768951B2/en not_active Expired - Fee Related
- 2009-10-26 US US12/605,903 patent/US20100118864A1/en not_active Abandoned
- 2009-12-15 US US12/638,386 patent/US7848316B2/en not_active Expired - Fee Related
-
2010
- 2010-01-12 US US12/686,195 patent/US7936713B2/en not_active Expired - Fee Related
- 2010-03-19 US US12/727,825 patent/US7894423B2/en not_active Expired - Fee Related
- 2010-03-29 US US12/749,320 patent/US20100232323A1/en not_active Abandoned
- 2010-04-13 US US12/759,501 patent/US20100260063A1/en not_active Abandoned
- 2010-05-11 US US12/777,436 patent/US7912043B2/en not_active Expired - Fee Related
- 2010-07-20 US US12/840,276 patent/US20110007733A1/en not_active Abandoned
-
2011
- 2011-10-06 US US13/267,150 patent/US20120269186A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4313036A (en) * | 1980-02-19 | 1982-01-26 | Rolm Corporation | Distributed CBX system employing packet network |
US4488288A (en) * | 1982-06-25 | 1984-12-11 | At&T Bell Laboratories | End-to-end information memory arrangement in a line controller |
US4614841A (en) * | 1982-06-29 | 1986-09-30 | At&T Bell Laboratories | Geographically distributed multiprocessor time-shared communication processing system |
US5440541A (en) * | 1992-12-16 | 1995-08-08 | Fujitsu Limited | System and method for establishing communications between subscribers based on personal number assigned to each subscriber |
Cited By (164)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9130613B2 (en) | 2006-12-19 | 2015-09-08 | Corning Optical Communications Wireless Ltd | Distributed antenna system for MIMO technologies |
US8873585B2 (en) | 2006-12-19 | 2014-10-28 | Corning Optical Communications Wireless Ltd | Distributed antenna system for MIMO technologies |
US9312938B2 (en) | 2007-02-19 | 2016-04-12 | Corning Optical Communications Wireless Ltd | Method and system for improving uplink performance |
US8867919B2 (en) | 2007-07-24 | 2014-10-21 | Corning Cable Systems Llc | Multi-port accumulator for radio-over-fiber (RoF) wireless picocellular systems |
US8718478B2 (en) | 2007-10-12 | 2014-05-06 | Corning Cable Systems Llc | Hybrid wireless/wired RoF transponder and hybrid RoF communication system using same |
US9813229B2 (en) | 2007-10-22 | 2017-11-07 | Corning Optical Communications Wireless Ltd | Communication system using low bandwidth wires |
US9549301B2 (en) | 2007-12-17 | 2017-01-17 | Corning Optical Communications Wireless Ltd | Method and system for real time control of an active antenna over a distributed antenna system |
US8644844B2 (en) | 2007-12-20 | 2014-02-04 | Corning Mobileaccess Ltd. | Extending outdoor location based services and applications into enclosed areas |
US20100291949A1 (en) * | 2007-12-20 | 2010-11-18 | Mobileaccess Networks Ltd. | Extending outdoor location based services and applications into enclosed areas |
US10153841B2 (en) | 2009-02-03 | 2018-12-11 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US8532492B2 (en) | 2009-02-03 | 2013-09-10 | Corning Cable Systems Llc | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US9900097B2 (en) | 2009-02-03 | 2018-02-20 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US10128951B2 (en) | 2009-02-03 | 2018-11-13 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for monitoring and configuring thereof |
US9673904B2 (en) | 2009-02-03 | 2017-06-06 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US9112611B2 (en) | 2009-02-03 | 2015-08-18 | Corning Optical Communications LLC | Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof |
US8897215B2 (en) | 2009-02-08 | 2014-11-25 | Corning Optical Communications Wireless Ltd | Communication system using cables carrying ethernet signals |
US9590733B2 (en) | 2009-07-24 | 2017-03-07 | Corning Optical Communications LLC | Location tracking using fiber optic array cables and related systems and methods |
US10070258B2 (en) | 2009-07-24 | 2018-09-04 | Corning Optical Communications LLC | Location tracking using fiber optic array cables and related systems and methods |
US8548330B2 (en) | 2009-07-31 | 2013-10-01 | Corning Cable Systems Llc | Sectorization in distributed antenna systems, and related components and methods |
US9485022B2 (en) | 2009-11-13 | 2016-11-01 | Corning Optical Communications LLC | Radio-over-fiber (ROF) system for protocol-independent wired and/or wireless communication |
US9729238B2 (en) | 2009-11-13 | 2017-08-08 | Corning Optical Communications LLC | Radio-over-fiber (ROF) system for protocol-independent wired and/or wireless communication |
US9219879B2 (en) | 2009-11-13 | 2015-12-22 | Corning Optical Communications LLC | Radio-over-fiber (ROF) system for protocol-independent wired and/or wireless communication |
US8639121B2 (en) | 2009-11-13 | 2014-01-28 | Corning Cable Systems Llc | Radio-over-fiber (RoF) system for protocol-independent wired and/or wireless communication |
US9319138B2 (en) | 2010-02-15 | 2016-04-19 | Corning Optical Communications LLC | Dynamic cell bonding (DCB) for radio-over-fiber (RoF)-based networks and communication systems and related methods |
US8831428B2 (en) | 2010-02-15 | 2014-09-09 | Corning Optical Communications LLC | Dynamic cell bonding (DCB) for radio-over-fiber (RoF)-based networks and communication systems and related methods |
US20110243189A1 (en) * | 2010-03-31 | 2011-10-06 | Tymes Laroy Wayne | Frequency alignment for narrow band radios |
US8983301B2 (en) | 2010-03-31 | 2015-03-17 | Corning Optical Communications LLC | Localization services in optical fiber-based distributed communications components and systems, and related methods |
US9967032B2 (en) | 2010-03-31 | 2018-05-08 | Corning Optical Communications LLC | Localization services in optical fiber-based distributed communications components and systems, and related methods |
US9525488B2 (en) | 2010-05-02 | 2016-12-20 | Corning Optical Communications LLC | Digital data services and/or power distribution in optical fiber-based distributed communications systems providing digital data and radio frequency (RF) communications services, and related components and methods |
US9042732B2 (en) | 2010-05-02 | 2015-05-26 | Corning Optical Communications LLC | Providing digital data services in optical fiber-based distributed radio frequency (RF) communication systems, and related components and methods |
US9853732B2 (en) | 2010-05-02 | 2017-12-26 | Corning Optical Communications LLC | Digital data services and/or power distribution in optical fiber-based distributed communications systems providing digital data and radio frequency (RF) communications services, and related components and methods |
US9270374B2 (en) | 2010-05-02 | 2016-02-23 | Corning Optical Communications LLC | Providing digital data services in optical fiber-based distributed radio frequency (RF) communications systems, and related components and methods |
US9185674B2 (en) | 2010-08-09 | 2015-11-10 | Corning Cable Systems Llc | Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s) |
US11653175B2 (en) | 2010-08-09 | 2023-05-16 | Corning Optical Communications LLC | Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s) |
US9913094B2 (en) | 2010-08-09 | 2018-03-06 | Corning Optical Communications LLC | Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s) |
US10448205B2 (en) | 2010-08-09 | 2019-10-15 | Corning Optical Communications LLC | Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s) |
US10959047B2 (en) | 2010-08-09 | 2021-03-23 | Corning Optical Communications LLC | Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s) |
US10014944B2 (en) | 2010-08-16 | 2018-07-03 | Corning Optical Communications LLC | Remote antenna clusters and related systems, components, and methods supporting digital data signal propagation between remote antenna units |
US9037143B2 (en) | 2010-08-16 | 2015-05-19 | Corning Optical Communications LLC | Remote antenna clusters and related systems, components, and methods supporting digital data signal propagation between remote antenna units |
US9042353B2 (en) | 2010-10-06 | 2015-05-26 | Blackbird Technology Holdings, Inc. | Method and apparatus for low-power, long-range networking |
US8976691B2 (en) | 2010-10-06 | 2015-03-10 | Blackbird Technology Holdings, Inc. | Method and apparatus for adaptive searching of distributed datasets |
US9379808B2 (en) | 2010-10-06 | 2016-06-28 | Blackbird Technology Holdings, Inc. | Method and apparatus for low-power, long-range networking |
US9357425B2 (en) | 2010-10-06 | 2016-05-31 | Blackbird Technology Holdings, Inc. | Method and apparatus for adaptive searching of distributed datasets |
US8718551B2 (en) | 2010-10-12 | 2014-05-06 | Blackbird Technology Holdings, Inc. | Method and apparatus for a multi-band, multi-mode smartcard |
US10104610B2 (en) | 2010-10-13 | 2018-10-16 | Corning Optical Communications LLC | Local power management for remote antenna units in distributed antenna systems |
US10420025B2 (en) | 2010-10-13 | 2019-09-17 | Corning Optical Communications LLC | Local power management for remote antenna units in distributed antenna systems |
US10425891B2 (en) | 2010-10-13 | 2019-09-24 | Corning Optical Communications LLC | Power management for remote antenna units in distributed antenna systems |
US11671914B2 (en) | 2010-10-13 | 2023-06-06 | Corning Optical Communications LLC | Power management for remote antenna units in distributed antenna systems |
US9699723B2 (en) | 2010-10-13 | 2017-07-04 | Ccs Technology, Inc. | Local power management for remote antenna units in distributed antenna systems |
US11212745B2 (en) | 2010-10-13 | 2021-12-28 | Corning Optical Communications LLC | Power management for remote antenna units in distributed antenna systems |
US10045288B2 (en) | 2010-10-13 | 2018-08-07 | Corning Optical Communications LLC | Power management for remote antenna units in distributed antenna systems |
US11224014B2 (en) | 2010-10-13 | 2022-01-11 | Corning Optical Communications LLC | Power management for remote antenna units in distributed antenna systems |
US11178609B2 (en) | 2010-10-13 | 2021-11-16 | Corning Optical Communications LLC | Power management for remote antenna units in distributed antenna systems |
US9419712B2 (en) | 2010-10-13 | 2016-08-16 | Ccs Technology, Inc. | Power management for remote antenna units in distributed antenna systems |
US8913892B2 (en) | 2010-10-28 | 2014-12-16 | Coring Optical Communications LLC | Sectorization in distributed antenna systems, and related components and methods |
US8622312B2 (en) | 2010-11-16 | 2014-01-07 | Blackbird Technology Holdings, Inc. | Method and apparatus for interfacing with a smartcard |
US11114852B2 (en) | 2010-11-24 | 2021-09-07 | Corning Optical Communications LLC | Power distribution module(s) capable of hot connection and/or disconnection for wireless communication systems, and related power units, components, and methods |
US11296504B2 (en) | 2010-11-24 | 2022-04-05 | Corning Optical Communications LLC | Power distribution module(s) capable of hot connection and/or disconnection for wireless communication systems, and related power units, components, and methods |
US9685782B2 (en) | 2010-11-24 | 2017-06-20 | Corning Optical Communications LLC | Power distribution module(s) capable of hot connection and/or disconnection for distributed antenna systems, and related power units, components, and methods |
US10454270B2 (en) | 2010-11-24 | 2019-10-22 | Corning Optical Communicatons LLC | Power distribution module(s) capable of hot connection and/or disconnection for wireless communication systems, and related power units, components, and methods |
US11715949B2 (en) | 2010-11-24 | 2023-08-01 | Corning Optical Communications LLC | Power distribution module(s) capable of hot connection and/or disconnection for wireless communication systems, and related power units, components, and methods |
US9104548B2 (en) | 2011-01-21 | 2015-08-11 | Blackbird Technology Holdings, Inc. | Method and apparatus for memory management |
US8909865B2 (en) | 2011-02-15 | 2014-12-09 | Blackbird Technology Holdings, Inc. | Method and apparatus for plug and play, networkable ISO 18000-7 connectivity |
US10205538B2 (en) | 2011-02-21 | 2019-02-12 | Corning Optical Communications LLC | Providing digital data services as electrical signals and radio-frequency (RF) communications over optical fiber in distributed communications systems, and related components and methods |
US9813164B2 (en) | 2011-02-21 | 2017-11-07 | Corning Optical Communications LLC | Providing digital data services as electrical signals and radio-frequency (RF) communications over optical fiber in distributed communications systems, and related components and methods |
US9325429B2 (en) | 2011-02-21 | 2016-04-26 | Corning Optical Communications LLC | Providing digital data services as electrical signals and radio-frequency (RF) communications over optical fiber in distributed communications systems, and related components and methods |
US8867370B2 (en) | 2011-03-02 | 2014-10-21 | Blackbird Technology Holdings, Inc. | Method and apparatus for adaptive traffic management in a resource-constrained network |
US9414342B2 (en) | 2011-03-02 | 2016-08-09 | Blackbird Technology Holdings, Inc. | Method and apparatus for query-based congestion control |
US9325634B2 (en) | 2011-03-02 | 2016-04-26 | Blackbird Technology Holdings, Inc. | Method and apparatus for adaptive traffic management in a resource-constrained network |
US9497715B2 (en) | 2011-03-02 | 2016-11-15 | Blackbird Technology Holdings, Inc. | Method and apparatus for addressing in a resource-constrained network |
US9191340B2 (en) | 2011-03-02 | 2015-11-17 | Blackbird Technology Holdings, Inc. | Method and apparatus for dynamic media access control in a multiple access system |
US8774096B2 (en) | 2011-03-02 | 2014-07-08 | Blackbird Technology Holdings, Inc. | Method and apparatus for rapid group synchronization |
WO2012119029A2 (en) * | 2011-03-02 | 2012-09-07 | Blackbird Technology Holdings, Inc. | Method and apparatus for power autoscaling in a resource-constrained network |
US9154392B2 (en) | 2011-03-02 | 2015-10-06 | Blackbird Technology Holdings, Inc. | Method and apparatus for power autoscaling in a resource-constrained network |
US9166894B2 (en) | 2011-03-02 | 2015-10-20 | Blackbird Technology Holdings, Inc. | Method and apparatus for rapid group synchronization |
US8885586B2 (en) | 2011-03-02 | 2014-11-11 | Blackbird Technology Holdings, Inc. | Method and apparatus for query-based congestion control |
WO2012119029A3 (en) * | 2011-03-02 | 2014-04-24 | Blackbird Technology Holdings, Inc. | Method and apparatus for power autoscaling in a resource-constrained network |
US8326338B1 (en) * | 2011-03-29 | 2012-12-04 | OnAir3G Holdings Ltd. | Synthetic radio channel utilizing mobile telephone networks and VOIP |
US8515479B1 (en) | 2011-03-29 | 2013-08-20 | OnAir3G Holdings Ltd. | Synthetic radio channel utilizing mobile telephone networks and VOIP |
US9240835B2 (en) | 2011-04-29 | 2016-01-19 | Corning Optical Communications LLC | Systems, methods, and devices for increasing radio frequency (RF) power in distributed antenna systems |
US9184843B2 (en) | 2011-04-29 | 2015-11-10 | Corning Optical Communications LLC | Determining propagation delay of communications in distributed antenna systems, and related components, systems, and methods |
US9369222B2 (en) | 2011-04-29 | 2016-06-14 | Corning Optical Communications LLC | Determining propagation delay of communications in distributed antenna systems, and related components, systems, and methods |
US9806797B2 (en) | 2011-04-29 | 2017-10-31 | Corning Optical Communications LLC | Systems, methods, and devices for increasing radio frequency (RF) power in distributed antenna systems |
US9807722B2 (en) | 2011-04-29 | 2017-10-31 | Corning Optical Communications LLC | Determining propagation delay of communications in distributed antenna systems, and related components, systems, and methods |
US10148347B2 (en) | 2011-04-29 | 2018-12-04 | Corning Optical Communications LLC | Systems, methods, and devices for increasing radio frequency (RF) power in distributed antenna systems |
US9425847B2 (en) | 2011-07-15 | 2016-08-23 | Blackbird Technology Holdings, Inc. | Protective case for adding wireless functionality to a handheld electronic device |
US8929961B2 (en) | 2011-07-15 | 2015-01-06 | Blackbird Technology Holdings, Inc. | Protective case for adding wireless functionality to a handheld electronic device |
US9338823B2 (en) | 2012-03-23 | 2016-05-10 | Corning Optical Communications Wireless Ltd | Radio-frequency integrated circuit (RFIC) chip(s) for providing distributed antenna system functionalities, and related components, systems, and methods |
US9948329B2 (en) | 2012-03-23 | 2018-04-17 | Corning Optical Communications Wireless, LTD | Radio-frequency integrated circuit (RFIC) chip(s) for providing distributed antenna system functionalities, and related components, systems, and methods |
US9258052B2 (en) | 2012-03-30 | 2016-02-09 | Corning Optical Communications LLC | Reducing location-dependent interference in distributed antenna systems operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9813127B2 (en) | 2012-03-30 | 2017-11-07 | Corning Optical Communications LLC | Reducing location-dependent interference in distributed antenna systems operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9781553B2 (en) | 2012-04-24 | 2017-10-03 | Corning Optical Communications LLC | Location based services in a distributed communication system, and related components and methods |
US10136200B2 (en) | 2012-04-25 | 2018-11-20 | Corning Optical Communications LLC | Distributed antenna system architectures |
US10349156B2 (en) | 2012-04-25 | 2019-07-09 | Corning Optical Communications LLC | Distributed antenna system architectures |
US9684060B2 (en) | 2012-05-29 | 2017-06-20 | CorningOptical Communications LLC | Ultrasound-based localization of client devices with inertial navigation supplement in distributed communication systems and related devices and methods |
US9729251B2 (en) | 2012-07-31 | 2017-08-08 | Corning Optical Communications LLC | Cooling system control in distributed antenna systems |
US9621293B2 (en) | 2012-08-07 | 2017-04-11 | Corning Optical Communications Wireless Ltd | Distribution of time-division multiplexed (TDM) management services in a distributed antenna system, and related components, systems, and methods |
US9973968B2 (en) | 2012-08-07 | 2018-05-15 | Corning Optical Communications Wireless Ltd | Distribution of time-division multiplexed (TDM) management services in a distributed antenna system, and related components, systems, and methods |
US9455784B2 (en) | 2012-10-31 | 2016-09-27 | Corning Optical Communications Wireless Ltd | Deployable wireless infrastructures and methods of deploying wireless infrastructures |
US10257056B2 (en) | 2012-11-28 | 2019-04-09 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US10530670B2 (en) | 2012-11-28 | 2020-01-07 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US10999166B2 (en) | 2012-11-28 | 2021-05-04 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US11665069B2 (en) | 2012-11-28 | 2023-05-30 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US9531452B2 (en) | 2012-11-29 | 2016-12-27 | Corning Optical Communications LLC | Hybrid intra-cell / inter-cell remote unit antenna bonding in multiple-input, multiple-output (MIMO) distributed antenna systems (DASs) |
US10361782B2 (en) | 2012-11-30 | 2019-07-23 | Corning Optical Communications LLC | Cabling connectivity monitoring and verification |
US9647758B2 (en) | 2012-11-30 | 2017-05-09 | Corning Optical Communications Wireless Ltd | Cabling connectivity monitoring and verification |
US9158864B2 (en) | 2012-12-21 | 2015-10-13 | Corning Optical Communications Wireless Ltd | Systems, methods, and devices for documenting a location of installed equipment |
US9414192B2 (en) | 2012-12-21 | 2016-08-09 | Corning Optical Communications Wireless Ltd | Systems, methods, and devices for documenting a location of installed equipment |
US9497706B2 (en) | 2013-02-20 | 2016-11-15 | Corning Optical Communications Wireless Ltd | Power management in distributed antenna systems (DASs), and related components, systems, and methods |
US11291001B2 (en) | 2013-06-12 | 2022-03-29 | Corning Optical Communications LLC | Time-division duplexing (TDD) in distributed communications systems, including distributed antenna systems (DASs) |
US9715157B2 (en) | 2013-06-12 | 2017-07-25 | Corning Optical Communications Wireless Ltd | Voltage controlled optical directional coupler |
US9974074B2 (en) | 2013-06-12 | 2018-05-15 | Corning Optical Communications Wireless Ltd | Time-division duplexing (TDD) in distributed communications systems, including distributed antenna systems (DASs) |
US11792776B2 (en) | 2013-06-12 | 2023-10-17 | Corning Optical Communications LLC | Time-division duplexing (TDD) in distributed communications systems, including distributed antenna systems (DASs) |
US10292056B2 (en) | 2013-07-23 | 2019-05-14 | Corning Optical Communications LLC | Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs) |
US9967754B2 (en) | 2013-07-23 | 2018-05-08 | Corning Optical Communications Wireless Ltd | Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs) |
US9247543B2 (en) | 2013-07-23 | 2016-01-26 | Corning Optical Communications Wireless Ltd | Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs) |
US9526020B2 (en) | 2013-07-23 | 2016-12-20 | Corning Optical Communications Wireless Ltd | Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs) |
US9661781B2 (en) | 2013-07-31 | 2017-05-23 | Corning Optical Communications Wireless Ltd | Remote units for distributed communication systems and related installation methods and apparatuses |
US10992484B2 (en) | 2013-08-28 | 2021-04-27 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US11516030B2 (en) | 2013-08-28 | 2022-11-29 | Corning Optical Communications LLC | Power management for distributed communication systems, and related components, systems, and methods |
US9385810B2 (en) | 2013-09-30 | 2016-07-05 | Corning Optical Communications Wireless Ltd | Connection mapping in distributed communication systems |
US9800340B2 (en) | 2013-10-28 | 2017-10-24 | Corning Optical Communications Wireless Ltd | Unified optical fiber-based distributed antenna systems (DASs) for supporting small cell communications deployment from multiple small cell service providers, and related devices and methods |
US10200124B2 (en) | 2013-10-28 | 2019-02-05 | Corning Optical Communications Wireless Ltd | Unified optical fiber-based distributed antenna systems (DASs) for supporting small cell communications deployment from multiple small cell service providers, and related devices and methods |
US10455497B2 (en) | 2013-11-26 | 2019-10-22 | Corning Optical Communications LLC | Selective activation of communications services on power-up of a remote unit(s) in a wireless communication system (WCS) based on power consumption |
US9178635B2 (en) | 2014-01-03 | 2015-11-03 | Corning Optical Communications Wireless Ltd | Separation of communication signal sub-bands in distributed antenna systems (DASs) to reduce interference |
US9775123B2 (en) | 2014-03-28 | 2017-09-26 | Corning Optical Communications Wireless Ltd. | Individualized gain control of uplink paths in remote units in a distributed antenna system (DAS) based on individual remote unit contribution to combined uplink power |
US9357551B2 (en) | 2014-05-30 | 2016-05-31 | Corning Optical Communications Wireless Ltd | Systems and methods for simultaneous sampling of serial digital data streams from multiple analog-to-digital converters (ADCS), including in distributed antenna systems |
US9807772B2 (en) | 2014-05-30 | 2017-10-31 | Corning Optical Communications Wireless Ltd. | Systems and methods for simultaneous sampling of serial digital data streams from multiple analog-to-digital converters (ADCs), including in distributed antenna systems |
US9509133B2 (en) | 2014-06-27 | 2016-11-29 | Corning Optical Communications Wireless Ltd | Protection of distributed antenna systems |
US10256879B2 (en) | 2014-07-30 | 2019-04-09 | Corning Incorporated | Reducing location-dependent destructive interference in distributed antenna systems (DASS) operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9929786B2 (en) | 2014-07-30 | 2018-03-27 | Corning Incorporated | Reducing location-dependent destructive interference in distributed antenna systems (DASS) operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9525472B2 (en) | 2014-07-30 | 2016-12-20 | Corning Incorporated | Reducing location-dependent destructive interference in distributed antenna systems (DASS) operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods |
US9730228B2 (en) | 2014-08-29 | 2017-08-08 | Corning Optical Communications Wireless Ltd | Individualized gain control of remote uplink band paths in a remote unit in a distributed antenna system (DAS), based on combined uplink power level in the remote unit |
US10397929B2 (en) | 2014-08-29 | 2019-08-27 | Corning Optical Communications LLC | Individualized gain control of remote uplink band paths in a remote unit in a distributed antenna system (DAS), based on combined uplink power level in the remote unit |
US9653861B2 (en) | 2014-09-17 | 2017-05-16 | Corning Optical Communications Wireless Ltd | Interconnection of hardware components |
US9929810B2 (en) | 2014-09-24 | 2018-03-27 | Corning Optical Communications Wireless Ltd | Flexible head-end chassis supporting automatic identification and interconnection of radio interface modules and optical interface modules in an optical fiber-based distributed antenna system (DAS) |
US9602210B2 (en) | 2014-09-24 | 2017-03-21 | Corning Optical Communications Wireless Ltd | Flexible head-end chassis supporting automatic identification and interconnection of radio interface modules and optical interface modules in an optical fiber-based distributed antenna system (DAS) |
US9420542B2 (en) | 2014-09-25 | 2016-08-16 | Corning Optical Communications Wireless Ltd | System-wide uplink band gain control in a distributed antenna system (DAS), based on per band gain control of remote uplink paths in remote units |
US9788279B2 (en) | 2014-09-25 | 2017-10-10 | Corning Optical Communications Wireless Ltd | System-wide uplink band gain control in a distributed antenna system (DAS), based on per-band gain control of remote uplink paths in remote units |
US9184960B1 (en) | 2014-09-25 | 2015-11-10 | Corning Optical Communications Wireless Ltd | Frequency shifting a communications signal(s) in a multi-frequency distributed antenna system (DAS) to avoid or reduce frequency interference |
US9253003B1 (en) | 2014-09-25 | 2016-02-02 | Corning Optical Communications Wireless Ltd | Frequency shifting a communications signal(S) in a multi-frequency distributed antenna system (DAS) to avoid or reduce frequency interference |
US9515855B2 (en) | 2014-09-25 | 2016-12-06 | Corning Optical Communications Wireless Ltd | Frequency shifting a communications signal(s) in a multi-frequency distributed antenna system (DAS) to avoid or reduce frequency interference |
US10659163B2 (en) | 2014-09-25 | 2020-05-19 | Corning Optical Communications LLC | Supporting analog remote antenna units (RAUs) in digital distributed antenna systems (DASs) using analog RAU digital adaptors |
US10096909B2 (en) | 2014-11-03 | 2018-10-09 | Corning Optical Communications Wireless Ltd. | Multi-band monopole planar antennas configured to facilitate improved radio frequency (RF) isolation in multiple-input multiple-output (MIMO) antenna arrangement |
US10523326B2 (en) | 2014-11-13 | 2019-12-31 | Corning Optical Communications LLC | Analog distributed antenna systems (DASS) supporting distribution of digital communications signals interfaced from a digital signal source and analog radio frequency (RF) communications signals |
US10135533B2 (en) | 2014-11-13 | 2018-11-20 | Corning Optical Communications Wireless Ltd | Analog distributed antenna systems (DASS) supporting distribution of digital communications signals interfaced from a digital signal source and analog radio frequency (RF) communications signals |
US10135561B2 (en) | 2014-12-11 | 2018-11-20 | Corning Optical Communications Wireless Ltd | Multiplexing two separate optical links with the same wavelength using asymmetric combining and splitting |
US9729267B2 (en) | 2014-12-11 | 2017-08-08 | Corning Optical Communications Wireless Ltd | Multiplexing two separate optical links with the same wavelength using asymmetric combining and splitting |
US10110308B2 (en) | 2014-12-18 | 2018-10-23 | Corning Optical Communications Wireless Ltd | Digital interface modules (DIMs) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (DASs) |
US10361783B2 (en) | 2014-12-18 | 2019-07-23 | Corning Optical Communications LLC | Digital interface modules (DIMs) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (DASs) |
US10187151B2 (en) | 2014-12-18 | 2019-01-22 | Corning Optical Communications Wireless Ltd | Digital-analog interface modules (DAIMs) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (DASs) |
US10523327B2 (en) | 2014-12-18 | 2019-12-31 | Corning Optical Communications LLC | Digital-analog interface modules (DAIMs) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (DASs) |
US9807700B2 (en) | 2015-02-19 | 2017-10-31 | Corning Optical Communications Wireless Ltd | Offsetting unwanted downlink interference signals in an uplink path in a distributed antenna system (DAS) |
US10292114B2 (en) | 2015-02-19 | 2019-05-14 | Corning Optical Communications LLC | Offsetting unwanted downlink interference signals in an uplink path in a distributed antenna system (DAS) |
US9785175B2 (en) | 2015-03-27 | 2017-10-10 | Corning Optical Communications Wireless, Ltd. | Combining power from electrically isolated power paths for powering remote units in a distributed antenna system(s) (DASs) |
US9681313B2 (en) | 2015-04-15 | 2017-06-13 | Corning Optical Communications Wireless Ltd | Optimizing remote antenna unit performance using an alternative data channel |
US10009094B2 (en) | 2015-04-15 | 2018-06-26 | Corning Optical Communications Wireless Ltd | Optimizing remote antenna unit performance using an alternative data channel |
US9948349B2 (en) | 2015-07-17 | 2018-04-17 | Corning Optical Communications Wireless Ltd | IOT automation and data collection system |
US10560214B2 (en) | 2015-09-28 | 2020-02-11 | Corning Optical Communications LLC | Downlink and uplink communication path switching in a time-division duplex (TDD) distributed antenna system (DAS) |
US9648580B1 (en) | 2016-03-23 | 2017-05-09 | Corning Optical Communications Wireless Ltd | Identifying remote units in a wireless distribution system (WDS) based on assigned unique temporal delay patterns |
US10236924B2 (en) | 2016-03-31 | 2019-03-19 | Corning Optical Communications Wireless Ltd | Reducing out-of-channel noise in a wireless distribution system (WDS) |
WO2018176950A1 (en) * | 2017-03-31 | 2018-10-04 | 京信通信系统(中国)有限公司 | Graded-plugging electrically-regulated control apparatus |
US11432238B2 (en) * | 2020-03-04 | 2022-08-30 | Nxp B.V. | Transceiver-based handshake/power-reduction |
US20210282087A1 (en) * | 2020-03-04 | 2021-09-09 | Nxp B.V. | Transceiver-based handshake/power-reduction |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7760703B2 (en) | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001 Effective date: 20160201 Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001 Effective date: 20160201 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001 Effective date: 20170120 Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001 Effective date: 20170120 |
|
AS | Assignment |
Owner name: BROADCOM CORPORATION, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041712/0001 Effective date: 20170119 |