`
`ZTE Corporation and ZTE (USA) Inc.
`
`
`
`(12) United States Patent
`Hanson et al.
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,546,425 B1
`Apr. 8, 2003
`
`US006546425B1
`
`(54) Ml*)TH()|) AND APPARATUS FOR
`PROVIDING MOBILE AND OTHER
`INTERMITTENT CONNECTIVITY IN A
`COMPUTING EWIRONMENT
`
`OTHER PUBLICATIONS
`(3., Sun Mierosystems, Inc., Internet Draft,
`Montenegro,
`“Reverse Tunneling for Mobile IP,” .Ian. 12, 1997.
`Bakre, A.; Badrinath, B.R., “I—TCP:
`Indirect TCP for
`Mobile llosts,” Department of Computer Science, Rutgers
`l”VCm0rS' Aaron D‘ Hanson’ Semlfi’ WA (US)’
`University, Piscataway, NJ 08855, DCS—TR—314, Oct.
`Emil A. Sturiiiolu, Medina, OH (US);
`1994
`Anatoly Menn, Seattle, WA (US); Erik
`I
`'
`D _[ P-, _- H D Phlf _ L C
`C
`D‘ Olson’ Seattle’ WA (US); Joseph T‘ cl! lrIloi'ey1blL{ml}e(llcore' “l\/lcfllilile Net(::I:rk
`Savarese, Edmonds, WA (US)
`Pr0t(:O1"(MN(~]§) 5 gap 3 {(397
`Netmotion Wireless, Inc., Seattle, WA
`Dt‘,1V'rid,i,\r'an]':lI1)":)%:‘iatL’
`C
`Us
`0
`(
`)
`0-7803-4386-7/98.
`Subject to any disclaimer, the term of this
`(List continued on next page.)
`patent is extended or adjusted under 35
`Pfimarv Exwm.m,r_Mehmel B. Geckfl
`U’S‘C' 154(b) by 0 days‘
`(74) Attomey. Agent, or Firm.—Nixon & Vanderliye RC.
`
`_
`
`_
`
`',
`
`El
`
`,
`
`ABSTRACT
`(57)
`A seamless solution transparently addresses the character-
`istics of nomadic systems, and enables existing network
`applications to run reliably in mobile environments. The
`solution extends the enterprise network,
`letting network
`managers provide mobile users with easy access to the same
`1"1PPl1Ci1U0f15 35 511111011111Y 115915 W1tl10ut_S3C1'1fi‘3lHi9.~ rellflblllty
`01 0011111112911 1111111F1g01?1°111- T110 5011111011 00111011105 =1d"?111-
`*19;%,°1_W1°_-1116 1W1°11~.’ 511131115 3:111 91111619119
`mo 1 e stan arts to create a so iition t at wor s wit exist-
`mg network applications. A Mobility Management Server
`coupled to the mobile network maintains the state of each of
`any number of Mobile End Systems and handles the coiii—
`plex session nianagenient required to riiaintain persistent
`connections to the network and to other peer processes. If a
`Mobile End System becomes unreachable, ‘suspends, or
`changes network address (e.g., due to roaming from one
`network interconnect to another), the Mobility Management
`Server maintains the connection to the associated peer
`task—allowiiig the Mobile End System to maintain a coii-
`tinuous connection even though it may temporarily lose
`_
`_
`-
`-
`,
`-
`~
`V
`contact with its network medium. In one example, Mobility
`Management Server communicates with Mobile End Sys-
`tems using Remote Procedure Call and Internet Mobility
`P10100015-
`
`Appl. No.: 09/330,310
`Fjled;
`_]un_ 11, 1999
`
`Related U-S- APpllCfltl0Il Dfltfl
`Pr0ViSi011al application N0. 60./103,598, filed 011 Oct. 9,
`1998'
`Int. Cl.7 .............................................. .. G06F 15/16
`U.s. C].
`...................... AA 709/227; 709/228; 709/330
`Field of Search ................................. 709/245, 250,
`709/330’ 229, 228’ 227, 230, 203, 220’
`,.,1 70.,
`_ ’ _ _
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`...........N 370/401
`
`6/1989 Freeburg Ct 31,
`3/1990 Hop
`'10/'l992 Perkins
`1/1093 Harrison
`5«‘:1993 Nf1101fll011
`(‘"1993 Bud “ML
`1/1994 Messenger
`4/1994 Davidson at al.
`6,1994 Ledem et al.
`9/1994 Moms cl Q1‘
`4/1995 Scitz ct al.
`
`4,837,800
`A
`4,912,756
`A
`5,159,592
`A
`5.181.200 A
`5.~,2412,-$05 A
`5=2’Z4r-U98 2
`5,276,680
`5307.490
`5,325,361
`5’349,_6—/»8
`5,410,543
`
`AAAA
`
`(I .ist continued on next page.)
`
`76 Claims, 32 Drawing Sheets
`
`Mobile End System (MES)
`Central, User
`
`lnlerhice
`
`205'
`
`Apphuciunns
`
`Mobile Management Syslum (W5)
`,3,
`224
`: 2341
`__
`‘Conlml, User Intzrfnce
`Oontlgurution
`:1 Samar
`Ilcmager
`
`11a'
`
`_
`
`\fndcn-s NT
`Database
`Us:r/Security
`
`\
`225
`
`Address Translallnn
`220 2- flnlermediute Drher)
`
`233
`
`Fizsd—End Systems [FES)
`Network
`flpptlcutiuns
`File)-‘Friat
`
`TCP. UDP Tmmzavl: II
`
`Exhibit 1016-00001
`
`
`
`US 6,546,425 B1
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`Teknique, Data Sheet, Optimized TCP/IP over Wireless,
`Schaumburg, IL, 5 pages.
`Teknique, Data Sheet, TX1000 Iligh Performance Commu-
`nication Processor, Schaumburg, IL, 2 pages (1994).
`Teknique, Data Sheet, TXZOOD High Performance Commu-
`nication Processor, Schaumburg, IL, 2 pages.
`Teknique, Data Sheet, TransNet II Wireless Gateway Ser-
`vices, Schaumburg, IL, 2 pages.
`IBM, Leading the Way for wireless data communication,
`ARTour, Research Triangle Park, NC 4 pages (Sep. 1995).
`M3i RadioLink, Overview, Management
`through instant
`interactive information, 7 pages (Jun. 1995).
`Web site information, WRQ AtGuard, www.atguard,com
`(copyright 1999),
`Press release, “WRQ Licenses AtGuard to Symantee and
`ASCII Network Technology” (copyright 1999).
`Datability Software Systems Inc., New York, NY “Proposal
`Presented to Digital Equipment Corporation Large System
`Group, Marlboro, Massachusetts” (Jul, 7, 1983).
`Datability Software Systems Inc., New York, NY, Con-
`trol—PC, Information Management System, System Builder
`Manual, Dral't Version (Apr. 1986).
`Datability Software Systems Inc., New York, NY, “Remote
`Access Facility, User’s Guide” (copyright 1985, 1986, 1987,
`1988).
`NetMotion Wireless Product Documentation on CD; with 2
`page printout of contents,
`Kojo, M., Raatikainen, K., Alanko, T: Connecting Mobile
`Workstations to the lntemet over a Digital Cellular Tele-
`phone Network. University of Helsinki, Department of
`Computer Science, Series
`of Publications C, No.
`C-199-4-39. Sep. 1994. Published also in Proceedings of the
`Mobidata Workshop, Rutgers University, NJ, Nov. 1994.
`Alanko, 'l‘., Kojo, M., Laamanen, Il., Liljeberg, M., Moll-
`anen, M., Raatikainen, K: Measured Performance of Data
`Transmission Over Cellular Telephone Networks. Computer
`Communications Review, 24(1994)5. Published also as
`Technical Report: University of Helsinki, Department of
`Computer Science, Series
`of Publications C, No.
`C—l994-53.
`
`Kojo, M., Alanko, T., Liljeberg, M., Raatikainen, K:
`Enhanced Communication Services for Mobile TCP/IP Net-
`working. University o1' Helsinki, Department o1' Computer
`Science, Series of Publications C, No. C—1995—15. Apr.
`1995.
`
`Liljeberg, M., Alanko, T., Kojo, M., Laamanen, H., Raati-
`kainen, K: Optimizing World—Wide Web for Weakly Con-
`nected Mobile Workstations: An Indirect Approach. In Proc.
`2nd International Workshop on Services in Distributed and
`Networked Environments (SDNE’95) Jun. 5th—6th, 1995,
`Whistler, Canada.
`Laamanen, H: An Experiment of Dependability and Perfor-
`mance of GSM Access to Fixed Data Network. University of
`Helsinki, Department of Computer Science, Series of Pub-
`lications C, No. C—19954l. Sep. 1995.
`Kiiskinen J., Kojo, M., Liljeberg, M., Raatikainen, K: Data
`Channel Service for Wireless Telephone Links. University
`of Helsinki, Department of Computer Science, Series of
`Publications C, No. C—l996—l. Jan. 1996. Published also in
`Proceedings of the 2nd International Mobile Computing
`Conference, Hsinchu, Taiwan, ROC, Mar. 25-27, 1996.
`
`,>>>>>3>3>3>D>3>3>3>>>>>>>>>£I>£1>3>>>>D>>>>>>D>D>i>3>>3>3>>>>>>3>>D>3>3>
`
`5.420.037
`5,442,791
`5A40J30
`5,475,819
`5,481,535
`5,490,139
`5,491,800
`5,499,343
`5515508
`5,548,723
`5.559.800
`5.504.071)
`5.500.225
`5508045
`5,572,528
`5,574,774
`5,602,916
`5,610,595
`5,623,601
`5,633,868
`5,657,390
`5,004,007
`5.073.322
`5.082.534
`5.717.737
`5,721,818
`5.724.340
`5,732,074
`5,748,897
`5,752,185
`5,754,774
`5,758,186
`5,708,525
`5,771,459
`5,784.0’-43
`5,796,727
`5,848,064
`5.850.974
`5.889.810
`5,909,431
`5935212
`5,968,176
`6,006,090
`6,091,951
`6,112,085
`6,147,986
`6,154,461
`6,161,123
`0407513
`0,170,057
`0.330.135
`0,201,902
`6,230,004
`6,233,617
`6,233,619
`6,236,652
`6,243,753
`6,249,818
`0,250,739
`0,308,281 B1
`
`0/1995 Derby et al.
`8/1995 Wrabetz et al.
`8/1995 Gleeson et al.
`12/1995 Miller ct al.
`l/1996 Hershey
`2/1996 Baker et al.
`2/1996 Goldsmith et al.
`3/1 996 Pcttus
`5/1996 Pettns et al.
`8/1996 Pettus
`9/1990' Mousseuu et al.
`10/1990' W'ant et al.
`10/1996 Haas ........................ .. 455/423
`10/1996 Morris et al.
`ll/1990' Shuen
`ll/1996 Alhberg et al.
`2/1997 Grube et al.
`3/’1997 Garrabrant et al.
`4/1997 Vu
`5/1997 Baldwin ct al.
`8/1997 Elgamal et al.
`9/1997 Samadi et al.
`.9/1.9.97 Pepe et al.
`10/1.997 Kapoor et al.
`2/1998 Doviak et al.
`2/1998 Ilunif el al.
`3/1998 Kobuyushi et al.
`3/1998 Spaur et al.
`5/1998 Katiyar
`5/1998 Ahuja
`5/1998 Bittinger et al.
`5/1998 Hamilton et al.
`6/1998 Kralowetz et al.
`6/1998 Demery et al.
`7/1.9.98 Shields
`8/1998 Harrison et al.
`12/1998 Cowan
`l/1999 Gervuis et al.
`3/19.99 Agrawal et al.
`6/1999 Kuthyar et al.
`8/1999 Kalajan et al.
`10/1999 Nessett ct al.
`12/1999 Coleman et al.
`7/2000 Sturniolo et al.
`8/2000 Garner et al.
`............. .. 455/428
`'1 H2000 Orsic
`11/2000 Sturniolo et. al.
`12/2000 Renouard et al.
`12/2000 I11oue et al.
`1/2001 Inoue et al.
`............. .. 709/215
`1/2001 Niblett et al.
`3/2001 Sturniolo et al.
`455/432
`5/2001 Hall et al.
`5/2001 Rothwein et al.
`5/2001 Narisi et al.
`5/2001 Preston et al.
`6/2001 Maehin et al.
`6/2001 Sharma
`7/2001 Skopp et al.
`10/2001 Hall, Jr. et al.
`
`709/227
`709/227
`370/349
`..
`............ .. 709/227
`
`............. .. 709/229
`
`........... .. 370/260
`
`OTHER PUFILICATIONS
`
`Teknique, Data Sheet, TransNet II Wireless Gateway, Wire-
`less—A Wide Area Viewpoint, Shaumburg, IL, 3 pages.
`Teknique, Data Sheet, TransRMail, Schaumburg,
`IL, 2
`pages.
`
`Teknique, Data Sheet, TXSDOO High Performance Commu-
`nication Processor, Schaumburg, IL, 2 pages (1994).
`
`
`
`US 6,546,425 B1
`Page 3
`
`Iiljeberg, M., Helin, H., Kojo, M., Raatikainen, K:
`Enhanced Service for World—Wide Web in Mobile WAN
`Environment. University of Ilelsinki, Department of Com-
`puter Science, Series of Publications C, No. C—1996—28.
`Apr. 1996. (Revised version published in Proceedings of the
`IEEE Global Internet 1996 Conference, London, England,
`Nov. 20-21, 1996.)
`Alanko T., Kojo M., Liljeberg M., Raatikainen K.: Mowgli:
`Improvements for Internet Applications Using Slow Wire-
`less Links. Proc. 8th ll-.'J:.E International Symposium on
`Personal, Indoor and Mobile Radio Cornmunications, Hel-
`sinki, Finland, Sep. 1997.
`Kojo M., Raatikainen K., Iiljeberg M., Kiiskinen J., Alanko
`T.: An Eflicient Transport Service for Slow Wireless Tele-
`phone I.inks. IEEE Journal on Selected Areas in Commu-
`nications, vol. 15, No. 7, Sep. 1997.
`“MOWGLI, Mobile Oifice Workstations using GSM Links,”
`University of Helsinki Dept. of Computer Science, Helsinki,
`Finland (Feb. 2000).
`Information Sciences Institute, “Transmission Control Pro-
`tocol—DARPA Internet Program Protocol Specification,”
`Sep.
`1981;
`http:/,fwww.csl.souy.co.jp/cgi—hin/'
`hyperrfc‘?rfc793.txt.
`Berners—Lee et al., “Hypertext Transfer Protocol—HTTP/'
`1.0”; May 1996; http:/,»’www.cis.ohio—state.edu/htbin/rfc/'
`rfc1945.html.
`Microsoft Support Online Knowledge Base Search Results,
`“DHCP (Dynamic Host Configuration Protocol) Basics,”
`Article ID: Q120829, (Revision Date Sep. 24, 1996).
`C)’Reilly Online Catalog, “Windows NT TCP/IP Network
`Administration,” Chapter 6, 25 pages( undated).
`WRQ White Paper, “TCP,/IP: The Best Protocol for Remote
`Computing," 13 pages (Nov. 14, 1.996).
`WRQ White Paper, “Reducing the Cost of PC Connectiv-
`ity," 7 pages (Nov. 25, 1996).
`
`WRQ White Paper, “TCP Kernel Architecture—The Silent
`TCP/lP Issue,” 4 pages (Nov. 14, 1996).
`WRQ White Paper, “IIow WRQ’s TCPEIP Reduces Costs
`and Improves Reliability in Remote and Mobile Comput-
`ing,” 5 pages (Nov. 14, 1996).
`Zenel, Bruce,
`'lhesis Proposal, “A Proxy Based Filtering
`Mechanism for The Mobile Environment,” Dept. of Com-
`puter Science, Columbia University, New York, NY, 52
`pages (undated).
`Badrinath, B.R., ct al., “Handling Mobile Clients: ACase for
`Indirect Inteaction,” Department of Computer Science, Rut-
`gers University, 7 pages (Oct. 1993).
`Brown, Kevin, et al., “M—UDP: UDP for Mobile Cellular
`Networks,” Department of Computer Science, University of
`South Carolina, 19 pages (Sep. 4, 1996).
`Brown, Kevin, et al., “M—TCP: TCP for Mobile Cellular
`Networks,” Department of Computer Science, University of
`South Carolina, 25 pages (Jul. 29, 1997).
`Zencl, Bruce et al., “A General Purpose Proxy Filtering
`Mechanism Applied to the Mobile I-.‘nvironment,” 12 pages
`(undated).
`Piscitello, D., Internet Draft, "Mobile Network Computing
`Protocol (MNCP)," 55 pages (Aug. 28, 1997).
`Bakre, Ajay et al., “M—RPC: A Remote Procedure Call
`Service for Mobile Clients,” ACM Presents M0biC0m "95,
`Pmceedings of The First Armual I1'zternm‘iar1al Cori erence
`on Mobile Conzputing aria’ Networking, pp. 97-110 (Nov.
`13-15, 1995).
`Droms, R., Network Working Group, Request for Com-
`menls memo, “Dynarnic Host Configuration Protocol,”
`Bucknell University, 39 pages (Oct. 1993).
`
`* cited by examiner
`
`Exhibit 1016-00003
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`23f01Al6ehS
`
`US 6,546,425 B1
`
`Emm__no_2
`
`Emfixm
`
`N wIh
`
`:59
`
`new9502
`
`Em.m>m
`
`
`
`
`
`EmfizmEmEmmmcmS_a.___no..2
`
`N9
`
`NZ.
`
`u..$:wH.,.,..?.
`
`Emm__82...
`
`Emwmam..,
`
`.Emo__n,o§
`Eflmzm
`
`ZTE Corporation and ZTE (USA) Inc.
`
`Exhibit 1016-00004
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`23f02tCChS
`
`US 6,546,425 B1
`
`
`
`3:3EsfimEoeomocozo_5o:
`
`
`
`
`
`ENmnmbow8ut£:_am:._o::ou
`
`55ExamE2502
`
`
`
`
`
`cu>_5£o_uoE_2=_vown
`
`
`
`E...E....%3.2,:
`
`Itm:o.m_a.__.$53.¢o._.
`
`fiozoz
`
`§_§__.§
`_.__.n_\o_m
`
`
`
`——«seaogre:._§__oz
`....-.3.3%.
`
`
`
`
`
`33.2.5nE:.n6._.
`
`
`
`8£_oE_am:_eEooEiozozb.E_8m\v__o£oz
`
`_%_>oi3%:
`
`mco=8__&<
`
`E33.5m3u
`
`asw__cm._._._..mmzEEsm
`
`
`
`
`
`.._wm”umVJmm=.5“5;82.3:.25Eggs
`
`as
`
`
`
`s_s_2.E$22...._oE8_3=_25°:
`
`
`
`
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00005
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 3 of 32
`
`US 6,546,425 B1
`
`Call
`
`to TDI Via Sockets
`
`or directly is intercepted
`
`Mobile interceptor packages
`TDI cell
`in an RPC
`
`datagram and sends to
`Mobile Management Server
`
`Mobile Management Server
`unpackages RPC datagram
`
`Mobile Management Server
`provides requested service
`
`Applications
`
`Configuration API
`
`Socket API
`
`RPC Protocol Engine 240
`
`Internet Mobility
`(interceptor Virtual Circuit)
`Protocol
`
`Engine 244
`
`‘ "i;a'i;i;;;; i;;i";;a:e-
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00006
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 4 of 32
`
`US 6,546,425 B1
`
`RCV TDI CALL
`
`Post RPC coll
`to IM-P queue
`
`Delay for
`coalesce time
`
`302
`
`304
`
`Y
`
`Flush queue, coalesce the RPC
`calls into single fragment
`and foword to Server
`
`FIG. 3A
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00007
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`23cl05tCChS
`
`US 6,546,425 B1
`
`
`
`
`
` ymmaummSfiozummmzmuumommm£o_ag.c._»,.._um
`
`
`
`
`
`@395{oz
`
`n=2_
`
`
`
`as9.,_8..&0%.fluasmcoomm
`
`3823:
`
`mango
`
`
`
`
`
`{oz:o_..o_oomm<aago_Bo_o
`
`
`
`Emzwumo__.6u;um
`
`ZTE Corporation and Z-TE (USA) Inc.
`
`Exhibit 1016-00008
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 6 of 32
`
`US 6,546,425 B1
`
`370
`
`74
`
`380
`
`Determine Association
`and Get Association
`Control Block
`
`Connect
`indication
`
`Start Associati_on_
`Create New Association
`Control Block
`
`Process
`Association
`Work
`
`.
`Eéggflgfit
`o
`
`N
`
`Stop Association
`Destroy Association
`Control Biock
`
`332
`
`Resources Ye
`
`-
`
`-
`
`NO
`
`Ping Inactivity
`Timeout
`
`_Shut Down
`Ping Association
`
`0
`
`State:
`Association
`Scheduie
`Again
`
`Schedule Association
`to Run Again
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00009
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 7 of 32
`
`US 6,546,425 B1
`
`De—Queue
`Work Request
`
`364
`
`Start
`Receiving
`
`Issue TCP
`Connect
`
`Association
`
`MorgiovfirgugfieDlgggtch
`
`Queues Marked
`Eligible
`
`Set Sstgtej T|odAssoc_iotion
`
`C e "E agom
`
`Z-TE Corporation and ZTE (USA) Inc.
`
`Exhibit 1016-00010
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 8 of 32
`
`US 6,546,425 B1
`
`f 3”
`
`ailocate and association control block
`
`3721*
`
`initialize system wide resources with defaults
`
`3728
`
`get configuration overrides
`with current configuration settings
`
`3728
`
`initialize flags
`
`372D
`
`initialize the associationwspecific work queue
`
`372E
`
`initialize association object hash table
`
`372F
`
`initialize the coalesce timer
`
`3729
`
`insert association control block into session table
`
`372*‘
`
`END
`
`FIG. 5A
`
`ZTE Corporation and ZTE (USA) Inc
`Exhibit 1016-00011
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 9 of 32
`
`Us 6,546,425 B1
`
`START
`
`375\\
`
`mark the association as deleted to prevent any further
`processing of work that may be outstanding
`
`close all associated association objects including
`process, connection and address objects
`
`376A
`
`.3768
`
`free all elements on work queue
`
`376C
`
`stop coalesce timer if
`
`running
`
`3753
`
`decrement association control block reference count
`
`K’ 376E
`
`a .376F
`
`destroy association specific work queue
`
`destroy object hash table
`
`destroy coalesce ‘timer
`
`remove association control block
`
`from association table
`
`free control block
`
`ZTE Corporation and ZTE (USA) Inc
`Exhibit 1016-00012
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 10 of 32
`
`US 6,546,425 B1
`
`CreditlNT
`=0
`
`mark association as "law mark pending" by setting the
`RPC_LMPQ_SEND_FLAG.
`
`379;.
`
`discard all received datagrams
`
`_
`
`3798
`
`received stream events by
`throttle a||
`refusing to accept
`the data
`
`37%
`
`refuse all
`
`received connect events for passive connections
`
`3790
`
`ZTE Corporation and ZTE (USA) Inc
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 11 of 32
`
`US 6,546,425 B1
`
`3:;§
`
`N0%F0%
`
`mEm
`
`
`
`EoEmo.¢£22
`
`
`
`32.5.{ozmzmoomonE
`
`Sontomsa
`
`mom
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00014
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`23pl021LlCChS
`
`US 6,546,425 B1
`
`EOE303E05__8283
`
`§_Bo%_n_EEEgm__%2__sas
`
`mme%<$8
`
`932...;c€05
`
`\
`
`N3:o:n_820;
`
`1.3_..o_iEne,_8&
`
`.\
`
`xo:m>o
`
`
`
`
`
`30.30mmEuo<:80
`
`
`
`
`
`fimfiocozooccoo:80
`
`
`
`mm...:nu<$o_oomm<
`
`Homccoo
`
`EmEombm
`
`ucmmEombm
`
`EmEfimfioo
`
`ucomEEmSoo
`
`eczmm
`
`Eéum
`
`Eu>mtoo_o
`
`Bmccooma
`
`
`
`mmSuu<Bciommomfi
`
`E3032$,‘$20
`
`
`
`Sofiecozooccoommoa
`
`ZTE Corporation and ZTE (USA) Inc.
`
`Exhibit 1016-00015
`
`A2E
`
`o__n_525$.{oz
`
`
`
`
`
`
`
`ozmommomm
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 13 of 32
`
`US 6,546,425 B1
`
`,/ 406
`
`queue:
`
`PRiOR|TY_H|GH
`
`Weight-—-queue
`Weight
`
`Queue
`Hove Work?
`
`Fig. 8
`Process Priority
`Dispatch Queues
`
`ZTE Corporation and ZTE (USA) Inc.
`
`Exhibit 1016-00016
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`23pl0.414|.66hS
`
`US 6,546,425 B1
`
`280%
`
`
`
`
`
`u2o._mcou58...”..:.mm.o_u_%__
`
`58.0%ocomg=2_
`
`
`
`Emfifimccoomfi
`
`ZTE Corporation and ZTE (USA) Inc.
`
`Exhibit 1016-00017
`
`
`
`mmcoqmmmmzmumm
`
`
`
`Em>H._fimccoo
`
`
`
`
`
`EmflEEmBooo>_8mm_
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 15 of 32
`
`US 6,546,425 B1
`
`Connect
`request?
`Yes
`
`<:li|1|ri)ii:¢?¢;[ti<‘in
`resources?
`
`State Configure
`
`“Error-
`Out of resources
`
`Queue connect or send request and signal global event — return to calling application
`
`Dispatch connect or send request
`from lMP global request queue
`
`Wait for application to
`queue work for
`connection. Go to step 625
`
`Go to step 615
`
`Wait for peer address.
`Continue queuing work.
`
`Wait for security context.
`Continue queuing work.
`Go to step 625
`
`FIG.
`
`Internet Mobility Protocol
`Connection Decision Tree.
`Connect and Send request
`
`logic
`
`Z-TE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00018
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 16 of 32
`
`US 6,546,425 B1
`
`State Pending
`
`6083
`
`509
`
`510
`
`Send IMP Sync Frame
`
`Stort
`
`IMP retransmit
`
`timer
`
`Has
`Retransmit
`timer
`expired?
`
`Wait
`Go to
`step 525
`
`611A
`
`Yes
`
`State Established
`
`Total
`Retransrnit
`time expired
`
`Has_
`connechon
`been
`uthenhcoted
`
`Did
`authentication
`succeed?
`
`614A
`
`Abort Connection
`Go to step #999
`
`ZTE Corporation and Z-TE (USA) Inc.
`Exhibit 1016-00019
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 17 of 32
`
`US 6,546,425 B1
`
`is
`
`-
`
`peeaifirggimit
`fun?
`
`Wait for
`
`acknowledgement.
`Go to step 625
`
`Create iMP data frame
`
`Send IMP data frame
`
`Is
`retransmit
`timer
`started?
`
`IMP
`Start
`retransmit
`timer
`
`Sleep waiting for more work.
`Return to global dispatcher
`
`FIG. 10C
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00020
`
`
`
`U.S. Pate11t
`
`Apr. 8,2003
`
`Sheet 18 of 32
`
`US 6,546,425 B1
`
`Terminate Connection
`
`to global work queue
`Queue request
`and return to calling application
`
`Dispatched terminate request from
`IMP process global work queue
`
`628
`
`629
`
`A500
`
`Abort Connection
`Go to step #999
`
`Graceful
`
`628A
`
`State Closing
`
`630
`
`631
`
`Send lMP Mortis Frame
`
`State Mortis
`
`Start retransmit
`
`timer
`
`IMP
`Post Mortem
`frame
`received?
`
`Has
`retransmit
`timer
`
`gmlt
`0 i0
`Step 637
`
`State Post Mortem
`
`636
`
`637
`
`Release connection Resources
`
`Steep waiting for more work.
`Return to global dispatcher
`
`FIG. 11
`
`Terminate Connection request
`
`logic
`
`Abort Connection
`
`Go to step #999
`
`ZTE Corporation and Z-TE (USA) Inc
`Exhibit 1016-00021
`
`
`
`U S. Patent
`
`Apr. 8,2003
`
`Sheet 19 of 32
`
`US 6,546,425 B1
`
`650
`
`—Event—
`Retransmit
`
`timer
`
`652
`
`Dismiss timer.
`
`entire retransmit
`period
`expired’?
`
`Steel? for difference
`in time
`
`No
`
`No
`
`Reprocess frame to remove
`any expired data
`
`Abort Connection
`Go to step #999
`
`State
`Dormant
`
`6568
`
`Retransmit Frame
`
`Restart retransmit
`
`timer
`
`660
`
`Fig. 12
`
`Retransmit Event Logic
`
`657
`
`65
`
`8
`
`659
`
`ZTE Corporation and ZTE (USA) Inc.
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`23f002teehS
`
`US 6,546,425 B1
`
`.ouooI
`
`
`
`
`
`:cum1xnwcaoogum
`
`outsoo‘Sum_.nE=ouEvaxnzsooFem_.nE:ooEmaom2‘SumuooaommEE.._a:_cmno;4oucmaumm
`
`%_Q38
`
`@3030{O3n_2_
`
`‘Sum-;_DE_
`ontsoo
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00023
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`23f012teehS
`
`US 6,546,425 B1
`
`oEE.._*0co_mm_Em=o:om
`
`us.0:§..%§_§2.32
`
`as:
`
`_ouooI
`
`xmmocmauom
`
`;_2Egg
`
`co~_m
`
`
`
`E8:n=2_
`
`xxmucozamm
`
`E300$2826ugoeomN*30¢
`
`Z-TE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00024
`
`
`
`U.S. Patent
`
`Apr. 3, 2003
`
`Sheet 22 of 32
`
`US 6,546,425 B1
`
`—Event—
`Receive IMP frame
`event from network!
`
`670
`
`Pre—vaIidate IMP Frame
`
`674
`
`Connecfian
`associated with
`frame?
`
`677
`
`Place on connection receive queue
`
`Place on global
`
`receive queue
`
`578
`
`675
`
`Mark connection eiigible to receive
`
`Place receive queue on global work queue
`
`675
`
`Place connection on giobal work queue
`
`Signal globai work event
`
`FIG. 13A
`
`Receive Event Logic
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00025
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 23 of 32
`
`US 6,546,425 B1
`
`Dispatch receive eligible
`from global work queue
`
`580
`
`Dequeue frame from receive queue
`
`581
`
`Frame
`deqmed
`?
`
`682
`
`Sleep waiting
`for more work.
`Go to step #1012
`
`Yes
`533 \
`Validate IMP received frame
`
`Discard Frame
`
`684
`
`IMP
`frame ok?
`
`Yes
`
`Conne_ction
`associated
`9
`
`Parse IMP frame
`
`591
`
`an
`
`Yes
`
`Process Passive Connection
`request.
`(30 to step #720
`
`691A
`
`é:°::ii2gei*;z';
`
`Fig. 13B
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00026
`
`
`
`U.S. Patent
`
`Apr. 3, 2003
`
`Sheet 24 of 32
`
`Us 6,546,425 B1
`
`592
`
`Process acknowledgement
`info and release
`any outstanding send frames
`
`693
`
`Post frame to security subsystem
`for possible decryption
`
`594
`
`Process any control data
`
`695
`
`596
`
`Any
`
`Yes
`
`Queue data to
`
`0pEj}E]($i;°nI application layer
`
`697A
`
`Change state
`back to
`Established
`
`Indicate disconnect
`application layer
`
`to
`
`Possibly
`Post Mortum
`frame?
`
`Go to step 530
`
`Sleep waiting for more work.
`Return to global work dispatcher
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00027
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 25 of 32
`
`US 6,546,425 B1
`
`there '§nothe,
`connection for this
`device?
`
`|s_ __
`_
`the "1't'°'
`it
`connechon
`
`Abort Connection
`C0” Step #999
`
`Do
`sequence and
`connection ID
`match?
`
`Yes
`
`724
`
`Duplicate frome
`Discord
`
`725
`
`Go to step 680
`
`Aliocote
`Connection
`resources?
`
`‘E”0r"'
`Out of resources
`
`727
`
`State Configure
`
`can step #999
`
`730
`
`Acquire security context
`
`Go to Step 680
`729
`
`Did
`security
`succeed?
`
`FIG. 14A
`
`0 Passive Connection request
`
`logic
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00028
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 26 of 32
`
`US 6,546,425 B1
`
`7.32
`
`Send IMP establish Frame
`
`State Established
`
`732A
`
`733
`
`Start retronsmitter
`
`Wait
`For authentication process to
`conclude. Return-to global dispatcher
`
`Dewce
`and user
`authenticated?
`
`736
`
`Abort Connection
`Go to Step #999
`
`737
`
`738
`
`Indicate connection to
`listening application
`
`t.
`f.
`G t
`3 C0" ‘gum '°”
`
`Did
`C°"fl9U"0ti°"
`and connect
`indication
`succeed?
`
`740
`Abort Connection
`Go to step #999
`
`N
`
`°
`
`741
`
`‘'95
`
`Sleep waiting for more work
`Return to global dispatcher
`
`F IG. 14B
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00029
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 27 of 32
`
`US 6,546,425 B1
`
`999
`
`1000
`
`_
`A50” C°*"”9Ct'°“ "eqU95t
`
`Dispatched
`Abort Connection request
`
`Connecfion
`associated
`with
`request?
`
`Save original state
`
`State Abort
`
`1002A
`
`1 004
`
`yes
`
`Indicate disconnection to
`listening application
`
`Connection
`indicated to listen
`application
`?
`
`1007
`
`No
`
`Go to step #1012
`
`FIG. 15A
`
`Abort Connection request
`
`logic
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00030
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 28 of 32
`
`Us 6,546,425 B1
`
`IMP
`
`Frame
`
`associated?
`
`Send IMP Abort Frame
`
`Return to coliing routine
`
`FIG. 15B
`
`Z-TE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00031
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 29 of 32
`
`US 6,546,425 B1
`
`
`
`
`
`stunas5.:_§u.aom%\s=8Sgamma3...:nnqom.256
`
`
`
`
`
`
`
`
`
`m23o::.mBoo.ocBm_._n_o_._o9.O_n_
`
`
`
`
`
`3.5.?.~m«uom.8...was
`
`
`
`
`
`>383:Q\co.cuo....:§33%..
`
`gmimm.8Es.um«:.<Eoiom
`
`poxoom
`
`
`
`
`
`tobfluoe3canEs3.9..soImE_cSoocfi
`
`gmémmmetauEmmmsonwQ\ozoiom
`
`
`
`Stemta:3gmttoo.ta:
`
`umtmm
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhibit 1016-00032
`
`
`
`U.S. Pate11t
`
`Apr. 8, 2003
`
`Sheet 30 of 32
`
`US 6,546,425 B1
`
`
`
`
`
`Egg..E__o._$388.Egan__§com..m.>_8mm
`
`
`
`
`
`
`
`_§_mEas:am
`
`:3
`
`.\Sm
`
`02
`
`>
`
`n_xAL$_u2_n2xAL$_uomEm
`
`m:_._AL.$_8m++
`
`SomE_._.
`
`§§amoreE8
`
`Q_;wm_=wzQuosoz2Q:39:
`
`$$c®:UA|«mv_UD2E.:®__UA|
`
`..E2EEuu_xA|§_uommmom
`
`etaQouma
`
`#ow2EE:mm5385:0
`my.
`
`>
`
`
`2ES.6uo_m.EEE
`an33233
`m.u_xAun.w:_uom
`
`
`5E:E
`
`m8m___%-§_uau?aTaaa
`
`.6:5cm:2E:32:3
`
`
`
`v_85mcE:8mac:..;..E__EmmaEB33%€<.
`
`E23E35.__o5,...>..m:..ALm.EmEm
`
`
`
`
`
`
`
`ZTE Corporation and ZTE (USA) Inc.
`Exhi
`it 1016-00033
`
`
`
`U.S. Pate11t
`
`Apr. 8, 2003
`
`23f0134|.0ChS
`
`US 6,546,425 B1
`
`asas
`
`z
`
`Ecom$58$2:
`
`_2a_meoosmcgm
`
`m_
`
`aman
`
`
`aammoz“ma.ESXm_m._EamooEBAm=E?a.T§u8umccmzoso2_%-_..;§
`
`
`
`.om.maaumozEm-93ALmfiom
`
`m.N.
`
`mmcom5some:usenmmmEEK
`_oc9mm95EoSoEoomficnaw9._aA-a.:$
`
`
`.m.Em-E%-§§
`
`an
`
`@
`
`m_=Eue_a%__e.mmm
`
`§:ua_.§__osomm
`
`an.6asGEam£3Em
`
`ZTE Corporation and Z-TE (USA) Inc.
`Exhibit 1016-00034
`
`
`
`U.S. Patent
`
`Apr. 8,2003
`
`Sheet 32 of 32
`
`US 6,546,425 B1
`
`mg
`
`..:..E2m_.___u086E
`
`mo“Baa
`
`
`
`omcofiSaree.
`
`_a_E_%z
`
`mmace.Bso
`
`
`
`§._3m__umoa
`
`E8$8_om3mo:8
`
`~82more.59:
`
`3:93;.Bmoo_a=m_m
`
`
`
`%_._%..=__..2ma_2__.._m
`
`
`
`_o_._m_m§_£m_._
`
`_ucm_m3558Pc£:_mo
`
`
`
` fimmeuuo5.55EEPENE
`
`se§___82%:
`
`_a=8___..._z955
`
`23.3.0EE28=5
`
`more3:35mommeuuo
`
`585__ocoEuc£m__Boa
`
`..m__Eutau___59.22mummeuua
`
`.fi__S55.
`
`
`
`2.25_m82._£c_.._;o5_Sc
`
`:5Esau__unoEuc3_.___5.5I/Imam
`
`
`
`-§_,E5528oz_=§9.O_n_
`
`22%Em__§_
`
`EaaE2.25329.
`
`2._.%_3_3E82_2_..__m
`
`ZTE Corporation and ZTE (USA) Inc.
`
`Exhi
`
`it 1016-00035
`
`
`
`US 6,546,425 B1
`
`1
`METHOD AND APPARATUS FOR
`PROVIDING MOBILE AND OTHER
`IN'I‘ERlVII'I"I‘EN'I‘ C()NNEC'I‘IVI'I‘Y IN A
`COMPUTING ENVIRONMENT
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application claims priority from provisional appli-
`cation No. 60/103,598 filed Oct. 9, 1998 entitled “Method
`and Apparatus I-"or Providing Wireless Connectivity In A
`Computing Environment” (which provisional application is
`incorporated by reference herein in its entirety).
`FIELD ()1-‘ THE INVENTION
`
`invention relates to connectivity between
`The present
`networked computing devices. More particularly,
`the
`present invention relates to methods and systems that trans-
`parently address the characteristics of nomadic systems, and
`enable existing network applications to run reliably in the
`associated mobile environments. Still more particularly, the
`invention relates to techniques and systems for providing a
`continuous data stream connection between intermittently-
`connected devices such as handheld data units and personal
`computing devices.
`BACKGROUND AND SUMMARY OF THE
`INVENTION
`
`Increasingly, companies are seeing rapid access to key
`information as the way to maintaining a competitive advan-
`tage. To provide immediate access to this information,
`mobile and other
`intermittently-connected computing
`devices are quietly and swiftly becoming an essential part of
`corporate networks—especially with the proliferation of
`inexpensive laptops and hand-held computing devices. “
`However, integrating these nomadic devices into existing
`network infrastructures has created a challenge for
`the
`information manager,
`Many problems in mobile networking parallel the diffi-
`culties in early local area networks (LANS) before the
`adoption of Ethernet. There are a variety of mobile protocols
`and interfaces, and because standards are just developing,
`there is little interoperability between systems. In addition,
`performance over
`these network technologies has been
`typically slow and bandwidth limited. Implementation costs
`to date have been high due the specialized nature of
`deployed systems.
`Along with these issues, mobile technologies present a
`category of problems unto their own. Interconnects back
`into the main network may travel over and through a public
`network infrastructure, thus allowing sensitive information
`to possibly be tapped into. Furthermore,
`if any of the
`intermediary interconnects are via a wireless interface, the
`information is actually broadcast, and anyone with a similar
`interface can eavesdrop without much difficulty.
`But, perhaps even more significantly, mobile networking
`has generally in the past been limited to mostly message-
`oriented or stateless applications—and thus has not been
`readily adaptable for existing or new corporate applications
`that use client/server, host-terminal, web-based or shared file
`systems models. This is because such commonly used
`applications need stateful sessions that employ a continuous
`stream of data—not just a stateless packet exchange—to
`work efifeetively and reliably.
`To this end, many or most popular oil"-the-shelf network-
`ing applications require TCP/IP sessions, or private virtual
`
`2
`circuits. These sessions cannot continue to function if they
`encounter network interruptions, nor can they tolerate roam-
`ing between networks (i.e., a change of network addresses)
`while established. Yet, mobile networking is, by its nature,
`dynamic and unreliable. Consider these common scenarios
`encountered in mobile networks:
`Disconnected or Out of Range User
`When a mobile device disconnects from a given network
`or loses contact (e.g., through an outage or “hole” in the
`coverage of a wireless interconnect), the session-oriented
`application running on the mobile device loses its stateful
`connection with its peer and ceases to operate. When the
`device is reattached or moves back into contact, the user
`must re-connect, log in again for security purposes, find the
`place in the application where work was left off, and
`possibly re-enter lost data. This reconnection process is time
`consuming, costly, and can be very frustrating.
`Moving to a Different Network or Across a Router Boundary
`(Network Address Change)
`Mobile networks are generally segmented for manage-
`ability purposes. But the intent of mobile devices is to allow
`them to roam. Roaming from one network interconnect to
`another can mean a change of network address, If this
`happens while the system is operational, the routing infor-
`mation must be changed for communications to continue
`between the associated peers. Furthermore, acquiring a new
`network address may require all of the previously estab-
`lished stateful application sessions to be terminated—again
`presenting the reconnection problems noted above.
`Security
`As mentioned before, companies need to protect critical
`corporate data. Off-the-shelf enterprise applications are
`often written with the assumption that access to the physical
`network is controlled (i.e., carried within cables installed
`inside a secure facility), and security is maintained through
`an additional layer of authentication and possible encryp-
`tion. These assumptions have not been true in the nomadic
`computing world—where data is at risk for interception as
`it travels over public airways or public wire-line infrastruc-
`tures.
`
`SUMMARY
`
`It would be highly desirable to provide an integrated
`solution that transparently addresses the characteristics of
`nomadic systems, and enables existing network applications
`to run reliably in these mobile environments.
`A presently preferred exemplary embodiment of the
`present invention solves this problem by providing a seam-
`less solution that extends the enterprise network,
`letting
`network managers provide mobile users with easy access to
`the same applications as stationary users without sacrificing
`reliability or centralized management. The solution com-
`bines advantages of present-day wire-line network standards
`with emerging mobile standards to create a solution that
`works with existing network applications.
`In accordance with one aspect of a presently preferred
`exemplary embodiment of the present invention, a Mobility
`Management Server (MMS) coupled to the mobile intercon-
`nect maintains the state of each of any number of Mobile
`End Systems (MES) and handles the complex session man-
`agement required to maintain persistent connections to the
`network and to peer application processes. If a Mobile End
`System becomes unreachable, suspends, or changes network
`address (e.g., due to roaming from one network inte