throbber
g
`asc
`
`PROVISIONAL APPLICATION COVER SHEET
`
`‘ES3s arequestforfiling aPROVISIONAL APPLICATIONFOR PATENT under 37 CFR 1.53(c)(2).
`
`
`
`
`LAST NAME
`
`FIRST NAME
`
`
`
`Docket Number
`
`3997-17PROV
`
`Type a plus sign (+)
`inside this box -
`
`
`
`.
`
`:
`
`+
`
`
`
`
`
`San Francisco, CA 94108
`
`INVENTOR(s)/APPLICANT(s)
`MIDDLE INITIAL
`RESIDENCE(CITY AND EITHER STATE OR FOREIGN COUNTRY)
`Slemmer
`Michael
`Ww.
`1146 Taylor St., #11
`2a
` TITLE OF THE INVENTION(280 characters max)
`
`
`
`Sheridan Ross P.C.
`1700 Lincoln Street, Suite 3500
`Denver
`
`
`
`counrey
`
`
`
`x
`
`
`
`A check or money order is enclosed to cover thefiling fees
`$150.00
`PROVISIONAL
`FILING FEE
`
`
`The Commissioner is hereby authorized to chargefiling fees
`AMOUNT ($)
`
`and credit Deposit Account Number:
`
`The invention was made by an agency ofthe United States Government or under a contract with an agency ofthe United States Government.
`
` Thomas D.Franklin, Esq.
`
`
`
`
`
`
`umberofPageSS
`Speciation
`
`
`
`5Lax|prawns nunberpsees|i | ovetpeiy [oO
`
`
`R
`
`Registration No. P-43,616
`SHERIDAN ROSSP.C.
`1700 Lincoln Street, Suite 3500
`incol
`.
`Denver, Colorado 80203-4501
`Phone: (303) 863-9700
`Fax: (303) 863-0223
`Date:
`
`"EXPRESS MAIL” MAILING LABEL NUMBER: EM 552805458 US
`DATE OF DEPOSIT: November 25, 1998
`| HEREBY CERTIFY THAT THIS PAPER OR FEE IS BEING DEPOSITED
`OFFICE TO ADDRESSEE" SERVICE UNDER37 CFR 1.10 ON THE DATE
`WITH THE UNITED STATES POSTAL SERVICE "EXPRESS MAIL POST
`COMMISSIONER FORPATENTS,WASHINGTON,D.C.20231.
`INDICATED ABOVE AND IS ADDRESSED TO THE ASSISTANT
`
`N oD Ab
`
`EXHIBIT 1007
`Guest-Tek v. Nomadix, IPR2018-00376
`
`EXHIBIT 1007
`Guest-Tek v. Nomadix, IPR2018-00376
`
`

`

`CONTROLLED COMMUNICATIONS OVER A
`GLOBAL COMPUTER NETWORK
`
`DETAILED DESCRIPTION
`
`A system and methods of operation are described in which
`
`predetermined controls are exercised over
`
`a users ability to
`
`communicate and obtain information over a global computer network,
`
`such as
`
`the Internet.
`
`Generally,
`
`the system and methods of
`
`operation function to control
`
`information received by a user
`
`machine such that information is returned to the user machine which
`
`was not requested by it. More particularly,
`
`a user machine may
`
`request a particular web page or set of web pages using a browser,
`
`which pages are available on the world wide web accessible using
`
`the Internet.
`
`The present invention, depending on predetermined
`
`conditions, may cause information to be viewed on the user machine
`
`that was obtained from a different address on the global computer
`network,
`such as
`a different web site.
`A web site,
`such as
`"www.abc.com", may be input into the browser on the user machine.
`
`However,
`
`instead of accessing this web site,
`
`the system would cause
`
`the user machine browser
`
`to actually display pages, HTML text
`
`and/or images from a different source, such as a different address
`
`on the web.
`
`The
`
`system also provides selective "sandboxing"
`
`in which
`
`certain web sites are directly accessible by the browser of the
`
`user machine while other web sites that are requested for access
`
`
`
`

`

`will result in triggering the controls implemented by the present
`
`invention, such as re-directing the request
`
`to another web site.
`
`In that regard,
`
`the user machine might receive as an input into its
`
`browser
`
`the name
`
`"www.xyz.com", which has
`
`a corresponding web
`
`address, and browse that site with no interference.
`
`On the other
`
`hand, when the user machine receives an input related to another
`
`web site address or selection of a link that would take the user
`
`machine outside of the "www.xyz.com" site,
`
`the user machine would
`
`again be subject to the controls of the present invention (forced
`
`proxying).
`
`With reference to the sole Figure,
`
`the system 10 includes one
`
`or more of a number of user or client machines 20.
`
`Each of the
`
`client machines
`
`20
`
`typically incudes at
`
`least
`
`one
`
`computer
`
`processor, a monitor having a display screen, storage memory, such
`
`as a hard drive and/or semi-conductor memory, and input devices,
`
`such as
`
`a keyboard and a mouse.
`
`The user machine also has
`
`necessary or appropriate software
`
`including operating system
`
`software and a commercially available web browser.
`
`The system 10
`
`also includes a server 30 in communication with each of the one or
`
`more user machines 10.
`
`The server 30 can handle all signal traffic
`
`to/from each of
`
`the user machines 20.
`
`On
`
`the output side or
`
`port(s) of the server 30 is an interface or connector hardware that
`
`enables the server 30 to communicate with the Internet 40.
`
`In that
`
`regard,
`
`the server 30 essentially acts as a proxy for Internet
`
`
`
`

`

`communications with each of the user machines 20.
`
`With regard to communications from the user machines 20 to the
`
`Internet 40, messages are sent
`
`to the Internet 40 by the user
`
`machines 20 by means of encapsulated parcels of data identified as
`
`“datagrams or packets".
`
`Each such packet must pass through the
`
`proxy server
`
`30
`
`to access
`
`the Internet 40.
`
`In controlling
`
`communications,
`
`the system 10, particularly the server 30,
`
`is
`
`interested only in TCP
`
`(Transmission Control Protocol) packets,
`
`which are used to carry essentially all web traffic.
`
`Each TCP
`
`packet contains
`
`the following fields or
`
`integers:
`
`source IP
`
`(Internet Protocol)
`
`address;
`
`source TCP port; destination IP
`
`address; and destination TCP port.
`
`Requests to the world wide web from the user machines 20 are
`
`unique in that their destination TCP port is set to 80. When a
`
`packet
`is transmitted from a user machine 20,
`a
`transparent
`proxying software module in the server 30 makes a determination
`regarding whether or not the transmitted information relates to a
`
`web request.
`
`In that
`
`regard,
`
`the server 30 analyzes at
`
`least
`
`portions of each packet.
`
`If a packet TCP port is identified as 80,
`
`that packet
`
`is intercepted by the transparent proxying software
`
`module and redirected to a different TCP port on the server 30.
`
`A
`
`software
`
`control
`
`program running
`
`on
`
`the
`
`server
`
`30
`
`is
`
`communication with that
`
`software port
`
`to which the packet
`
`in
`
`is
`
`redirected.
`
`This software port responds to requests as if they
`
`
`
`

`

`were the web server on the Internet 40. This proxy server program
`
`or control program assumes control of the web request by fulfilling
`
`the actual request from the user machine 20 or implementing other
`
`predetermined steps.
`
`Such other predetermined steps relate to
`
`providing information to the user machine 20 from one or more
`
`particular web pages of a web site different from the user machine
`
`20 requested site.
`
`The identification of
`
`the web pages to be
`
`directed to the particular user machine can be based on a number of
`
`factors including:
`
`the input to the user machine 20 by the user or
`
`operator of that machine and provided to the browser on the user
`
`machine 20;
`
`the Internet or MAC
`
`address associated with the
`
`particular user machine 20; and other factors such as whether or
`
`not the Internet is accessible to the particular user machine 20.
`
`The
`
`server
`
`30
`
`also has
`
`the
`
`capability of deactivating or
`
`essentially bypassing such controls in the sense of allowing a
`particular user machine 20 to freely access the Internet 40 as if
`
`the proxy server 30 were not interposed between the particular user
`
`machine 20 and the Internet 40.
`
`With respect to examples of control steps or algorithms,
`
`the
`
`software control program to which the web request is transferred
`
`for control purposes can include the following controls when it
`
`receives a web request:
`
`The user machine 20 is caused to receive a
`
`returned HTTP
`
`redirect message. This is a special command that directs the web
`
`
`
`

`

`browser of the user machine 20 to "jump to" or be provided with
`
`information from another web site location, without any display or
`
`other indication of this web site change to the particular user
`
`machine 20.
`
`For example, a user machine 20 receiving a request to
`
`its browser in the form of www.abc.com could be directed by the
`
`control program in the proxy server 30 to access www.xyz.com as the
`
`web site address to be displayed or from which information is to be
`
`obtained.
`
`Alternatively,
`
`the control program could return a web page to
`
`the user machine 20 based on a path that
`
`the user machine 20
`
`selected.
`
`For example,
`
`if an input were received by the user
`
`machine 20 in the form of the web site address www.abc.com/index or
`
`www.def.com/index,
`
`the proxy server 30, by means of the software
`
`module that determines that this is a TCP packet and also by means
`
`of the software control program, could instead access and fetch one
`or more web pages from the web site address www.xyz.com/index.
`Similarly, an input
`to the particular user machine 20 in form of
`
`www.abc.com/xxx, could result
`
`in the proxy server 30 obtaining
`
`www.xyz.com/xxx.
`
`In this way,
`
`the particular user machine 10 will
`
`always be forced to receive return information from the www.xyz.com
`
`web site. Except for the results that the "location" in the web
`
`browser will read something different, because it is reading from
`
`www.xXyz.com and not www.abc.com/xxx,
`
`it will appear to the user
`
`machine 20 that it is executing properly.
`
`
`
`

`

`Alternatively,
`
`the proxy server 30 could return to the user
`
`machine 20 the actual web page that the user machine 20 requested.
`
`In this case,
`
`the control program acts like a normal proxy server
`
`by connecting to the Internet 40 and fetching the requested page or
`
`pages.
`
`This functionality can be identified as "sandboxing" by
`
`which requests to certain one or more locations on the web are
`
`allowed or granted without modification, while others are not.
`
`For
`
`instance,
`
`connections to www.xyz.com could be proxied in this
`
`manner, while other requests my generate a set of pages from a web
`
`site different from the requested web site.
`
`Alternatively,
`
`the control program could return web page(s)
`
`based on particularly identified information about the user machine
`
`20,
`
`The proxy server 30 may rely on the IP address that it
`
`receives to provide a response based thereon. Other information
`
`the user machine 20 might also be utilized in customizing a
`about
`response to a web request from that user machine 20.
`
`With respect to describing in greater detail the methodology
`
`and operations of the present invention,
`
`two examples are provided:
`
`Example 1 - Log in to a network different from that to which the
`
`user machine is normally configured, such as logging in at a hotel.
`
`A user plugs in his laptop and runs his browser.
`
`The user's
`
`default web page is http:/home.browserid.com/Index.htm.
`
`The user's
`
`laptop (user machine
`
`20)
`
`attempts
`
`to connect
`
`to port
`
`80 of
`
`
`
`

`

`home.browserid.com.
`
`The server 30 redirects this request
`
`to the
`
`forced proxying or control program.
`
`The control program determines
`
`that this is the first time its seen this user machine 20.
`
`It
`
`returns an HTTP redirect message sending the user machine 20 to
`
`http:/www.login.com.
`
`The user's laptop receives this message and
`
`now tries to fetch http:/wwwlogin.com.
`
`It attempts to connect to
`
`port 80 of www.login.com.
`
`The server 30 redirects this request to
`
`the
`
`control
`
`program.
`
`The
`
`control
`
`program recognizes
`
`“www.login.com". When it receives requests to www.login.com it
`
`knows to respond with a set of pages stored at an offsite server
`
`www.connectgroup.com.
`
`It connects to that server and fetches the
`
`home
`
`page
`
`from
`
`that
`
`offsite
`
`server,
`
`namely,
`
`http: /www.connectgroup.com.
`
`It
`
`returns this page to the user
`
`machine 20. Because the page contains two images,
`
`imagel.gif and
`
`image2.gif,
`the user machine
`browser makes
`two
`additional
`connections to port 80 on www.login.com, once for each image.
`The
`server 30 redirects these requests to the control program.
`The
`
`control program recognizes www.login.com again.
`
`It also sees that
`
`the user machine
`
`20
`
`is
`
`trying to access
`
`/imagel.gif
`
`and
`
`/image2.gif,
`
`respectively, on that server.
`
`It connects to the
`
`offsite server and fetches http: /www.connectgroup.com/imagel.gif
`
`and http: /www.connectgroup.com/image2.gif.
`
`It returns these images
`
`to the particular user machine 20.
`
`The user views this page and
`
`clicks on one of the links on the page, which directs the user to
`
`
`
`

`

`http: /www.login.com/page2.html.
`
`The
`
`server
`
`30
`
`redirects this
`
`request
`
`to the control program.
`
`The control program recognizes
`
`www.login.com again.
`
`It also sees that
`
`the user machine 20 is
`
`trying to access /page2.html on that server.
`
`It connects to the
`
`offsite server and fetches http:/www.connectgroup.com/ page2.html.
`
`It returns this page to the particular user machine 20.
`
`The user
`
`sees on the monitor of the user machine 20 that this page contains
`
`a "login" button.
`
`The user selects or clicks it. This action or
`
`selection
`
`causes
`
`the
`
`user
`
`machine
`
`20
`
`to
`
`access
`
`http:/www.login.com/login.
`
`The server 30 software module redirects
`
`this request to the server control program.
`
`The control or forced
`
`proxying program recognizes www.login.com and also the page being
`
`accessed as /login.
`
`The program realizes that this user machine 20
`
`is trying to log in.
`
`The program returns to the user machine 20 a
`
`web page containing a redirect command. This page will cause the
`
`user machine 20 to jump to http:/www.lodgenet.com in five seconds,
`
`which is enough time for the control program to disable forced
`
`proxying for
`
`this user.
`
`The control program disables forced
`
`proxying for this user machine IP address.
`
`The user machine 20
`
`displays a "logging you in..." message for five seconds and then
`
`the http://www.lodgenet.com home page is displayed.
`
`The operator
`
`of
`
`this user machine
`
`20
`
`can then begin to use the Internet
`
`normally.
`
`
`
`

`

`Example 2 - ISP advertising banner
`
`A user plugs in the modem of the user machine 20 and dials to
`
`the user’s ISP.
`
`The user then launches the web browser of the
`
`particular user machine 20.
`
`The user inputs http:/quote.xyz.com to
`
`access and check his stocks.
`
`This user machine 20 attempts to
`
`connect to port 80 of quote.xyz.com.
`
`The server 30 redirects this
`
`request to the control program.
`
`The control program responds with
`
`HTTP
`
`redirect
`
`command, which
`
`sends
`
`the user machine
`
`20
`
`to
`
`http:/www.community.com,
`
`the ISP's
`
`community page.
`
`The user
`
`machine
`
`20
`
`receives
`
`this message
`
`and
`
`attempts
`
`to
`
`fetch
`
`http: /www.community.com.
`
`It attempts to connect
`
`to port 80 of
`
`www.community.com.
`
`The server 30 redirects this request
`
`to the
`
`forced proxying program.
`
`The forced proxying program recognizes
`
`http:/www.community.com as
`
`a
`
`sandboxed
`
`domain.
`
`It
`
`fetches
`
`http: /www.community.com and returns this page to the user machine
`
`20. This page includes a selector element or button which allows
`
`the user machine 20 to access the site it initially sought was,
`
`in
`
`this
`
`case http:/quote.xyz.com.
`
`The
`
`server
`
`30 places
`
`the
`
`appropriate code in the web page to make this button work properly.
`
`The user machine browser redirects this request
`
`to the control
`
`program.
`
`The control program recognizes http:/www.flycast.com as
`
`another
`
`sandboxed
`
`domain.
`
`It
`
`fetches
`
`http: /www.flycast.com/Imagel.gif and returns it to the user machine
`
`20.
`
`The user machine browser displays the advertising banner on
`
`
`
`

`

`the display screen of
`
`the monitor.
`
`The user
`
`views
`
`this
`
`advertisement, but wants to check stock quotes.
`
`He clicks on the
`
`button which takes him to http:/quote.xyz.com. The
`
`server
`
`30
`
`redirects this request to the control program.
`
`The control program
`
`remembers
`
`that http:/quote.xyz.com was
`
`the site that
`
`the user
`
`initially wanted to access.
`
`It returns to the user machine 20 a
`
`"logging you in..." page with a redirect which will
`
`take him to
`
`http:/quote.xyz.com in five seconds.
`
`The program then disables
`
`forced proxying for this user machine 20.
`
`In five seconds,
`
`the
`
`user machine
`
`browser
`
`fetches
`
`the
`
`web
`
`page
`
`stored
`
`at
`
`http:/quote.xyz.com.
`
`The user machine 20 can now use the Internet
`
`normally.
`
`
`
`10
`
`

`

`What is claimed is:
`
`1.
`
`A method related to controlling communication of
`
`a
`
`message from a user machine, comprising:
`
`sending a message from a user machine to a proxy server,
`
`said first message including at least a first data packet having a
`
`number of
`
`fields including a first
`
`field related to a first
`
`destination address;
`
`receiving said message by said proxy server;
`
`controlling said message by said proxy server including
`
`changing said first destination address to a source different from
`
`said first destination address; and
`
`receiving returned information by said user machine
`
`related to said source.
`
`2.
`
`A method, as claimed in claim 1, wherein
`
`said first destination address is an address associated
`
`with a site on a global computer network and said source has a
`
`second destination address on the global computer network.
`
`3.
`
`A method, as claimed in claim 2, wherein:
`
`said first destination address is directly accessible by
`
`said user machine in the absence of said proxy server using said
`
`global computer network.
`
`11
`
`
`
`

`

`4.
`
`A method, as claimed in claim 1, wherein:
`
`said controlling step includes transferring said message
`
`from a first port of said proxy server when said proxy server
`
`ascertains that said message
`
`is to be
`
`sent using the global
`
`computer network.
`
`om
`
`A method, as claimed in claim 4, wherein:
`
`said changing step includes using a control program of
`
`said proxy server that is accessible from a second port of said
`
`proxy server, said proxy server control program having executable
`
`code used in determining an identity of said source.
`
`6.
`
`A method, as claimed in claim 1, wherein:
`
`said controlling step includes transmitting destination
`
`information based on said source from a second port of said proxy
`
`server to a first port thereof.
`
`7.
`
`A method, as claimed in claim 1, wherein:
`
`said receiving step includes receiving said message at a
`
`first predetermined port of said proxy server.
`
`8.
`
`A method, as claimed in claim 1, wherein:
`
`Said returned information includes at least one of the
`
`following:
`
`logging in information and advertising information
`
`12
`
`
`
`

`

`
`
`
`9,
`
`A method, as claimed in claim 1, wherein:
`
`said receiving step includes making available an option
`
`that enables said user machine to link to said first destination
`
`address.
`
`10.
`
`A method, as claimed in claim 9, wherein:
`
`said receiving step includes selecting at said user
`
`Machine said first destination address.
`
`11.
`
`A method, as claimed in claim 5, wherein:
`
`Said receiving step includes causing said proxy server
`
`control program to allow said user machine to directly access
`
`destination addresses of
`
`the global computer network and avoid
`
`changing to another address.
`
`12.
`
`A system for controlling message transmissions relative
`
`to a global computer network, comprising:
`
`a user machine;
`
`a proxy server
`
`including a first port
`
`for
`
`receiving
`
`messages from said user machine; and
`
`a
`
`communications
`
`network
`
`interconnecting said user
`
`machine and said proxy server;
`
`wherein said proxy server
`
`receives at
`
`last
`
`a first
`
`13
`
`

`

`message from said user machine, said first message including at
`
`least a first data packet having a number of fields including a
`
`first field related to a first destination address, with said first
`
`destination address being associated with a site on the global
`
`computer network, said proxy server ascertaining whether said first
`
`message is directed to the global computer network, said message
`
`being sent by said proxy server to a proxy server control program
`
`when said message is directed to the global computer network, said
`
`proxy server control program determining whether said message is to
`
`be permitted to be sent to said first destination address.
`
`13.
`
`A system, as claimed in claim 1, wherein:
`
`said proxy server determines whether said message is to
`
`be permitted to be sent to said first destination address using a
`
`number of parameters
`
`including at
`
`least one of:
`
`information
`
`received from said user machine; an address associated with said
`
`user machine;
`
`an identification of a user of said user machine; a
`
`destination address of said message; and whether said user machine
`
`or
`
`the user thereof has unregulated access to addresses on the
`
`global computer network.
`
`14.
`
`A system, as claimed in claim 12, wherein:
`
`said first packet
`
`has
`
`a
`
`second
`
`field related to
`
`identifying a TCP port.
`
`14
`
`
`
`

`

`15.
`
`A system, as claimed in claim 12, wherein:
`
`said proxy server returns to said user machine a HTTP
`
`redirect message in which said user machine is directed to access
`
`a source on the global computer network different from said first
`
`destination address.
`
`16.
`
`A system, as claimed in claim 12, wherein:
`
`said proxy
`
`server
`
`returns
`
`to
`
`said user machine
`
`information from a source having an identity determined using
`
`information related to said user machine.
`
`17.
`
`A system, as claimed in claim 12, wherein:
`
`said proxy server
`
`returns
`
`information to said user
`
`machine from a source different from said destination address and
`
`in which said information is related to information available at
`
`said first destination address.
`
`18.
`
`A system, as claimed in claim 12, wherein:
`
`said proxy server
`
`returns
`
`information to said user
`
`machine from a source different from said first destination address
`
`unless said first destination address is a predetermined address.
`
`
`
`15
`
`

`

`19.
`
`A system, as claimed in claim 12, wherein:
`
`said proxy server includes a second port in communication
`
`with said proxy server control program and to which at
`
`least
`
`portions of said first message are sent when said first message is
`
`directed to the global computer network.
`
`M: \3997\-17 PROV\ PROVPAT. APP
`
`
`
`16
`
`

`

`USER
`
`LAACHE
`
` 20(Oa
`
`FIGURE
`
`TELIVTERKWET
`
`“EEEileashyMeaseyatvist
`
`
`

`

`United States Patent & Trademark Office
`Office ofInitial Patent Examination -- Scanning Division
`
`
`
`a
`
`
`Application deficiencies were found during scanning:
`O Page(s)
`of
`{ Jeelarabion
`for scanning.
`(Documenttitle)
`
`were not present
`
`O Page(s)
`for scanning.
`
`of
`
`(Documenttitle)
`
`were not present
`
`[) Scanned copyis bestavailable.
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket