Mobile router with session proxy
Summary by NHIP
Vehicle router link monitoring
The system monitors layer 2 and layer 3 communication links over a vehicle backhaul interface. It reestablishes both links upon layer 2 failure and only the layer 3 link upon isolated layer 3 failure, while sending data test packets to a destination device.
Claim Score by NHIP
Abstract
A non-transitory computer readable medium with computer executable instructions stored thereon executed by a processor in a vehicle comprising a wireless local area network interface to communicate with a mobile device via a local wireless network and a backhaul network interface to wirelessly communicate with a backhaul network and to establish a layer 2 communication link and a layer 3 communication link to provide a link monitoring communication method. The method comprises: monitoring the layer 2 communication link and the layer 3 communication links over the backhaul network interface; reestablishing communications via the layer 2 communication link and the layer 3 communication link when a communications failure via the layer 2 communications link is detected; and reestablishing communications via the layer 3 communication link when a communications failure via only the layer 3 communication link is detected.

Term
9.7 yearsleft in the term
Expires 13 June 2036.
- Priority and filed
- Granted
- Today
- Expires
16 claims: 2 independent, 14 dependent
- 1Broadest claimClaim Score 43, average(NHIP)A non-transitory computer readable medium with computer executable instructions stored thereon executed by a processor in a vehicle comprising a wireless local area network interface to communicate with a mobile device via a local wireless network and a backhaul network interface to wirelessly communicate with a backhaul network and to establish a layer 2 communication link and a layer 3 communication link to provide a link monitoring communication method, the method comprising:monitoring said layer 2 communication link and said layer 3 communication link over said backhaul network interface;reestablishing communications via said layer 2 communication link and said layer 3 communication link when a communications failure via said layer 2 communications link is detected;and reestablishing communications via said layer 3 communication link when a communications failure via only said layer 3 communication link is detected.
- 12A computer-program product for providing a communication mode of operation of a vehicle, said vehicle comprising a local network interface to wirelessly communicate with a mobile device via a local wireless network, a backhaul network interface to wirelessly communicate with a backhaul network via a layer 2 communication link and a layer 3 communication link, and a processor in communication with said local network interface and said backhaul network interface, said product comprising a non-transitory computer-readable medium encoded with computer-executable instructions that, as a result of being executed by said processor disposed within a vehicle, said processor executes a method for providing a communication mode, the method comprising:monitoring said layer 2 communication link and said layer 3 communication link;reestablishing said layer 2 communication link and said layer 3 communication link when a layer 2 communication link failure is detected;and reestablishing said layer 3 communication link when a layer 3 communication link failure is detected.
Independent claims2
85 paragraphs in 5 sections, as filed
CROSS-REFERENCE TO RELATED APPLICATIONS
0001The present application is a continuation of U.S. Ser. No. 15/180,304 filed Jun. 13, 2016 which is a continuation of U.S. Ser. No. 14/448,810 filed Jul. 31, 2014 which is a continuation of U.S. Ser. No. 12/514,047 filed May 15, 2007 that claims priority to PCT/US07/11632 filed May 7, 2009 that claims priority to the following U.S. provisional applications:
0002(1) U.S. provisional application Ser. No. 60/800,749, filed May 16, 2006, entitled “Mobile Router That Monitors Links,” by Douglas S. Moeller;
0003(2) U.S. provisional application Ser. No. 60/800,679, filed May 16, 2006, entitled “Mobile Router With Serial Interface,” by Douglas S. Moeller; and
0004(3) U.S. provisional application Ser. No. 60/800,750, filed May 16, 2006, entitled “Mobile Router With Session Proxy,” by Douglas S. Moeller.
0005The present application is related to the following PCT applications:
0006(1) PCT application entitled “Mobile Router That Monitors Links,” by Douglas S. Moeller, now U.S. Pat. No. 8,189,552; and
0007(2) PCT application entitled “Mobile Router With Serial Interface,” by Douglas S. Moeller, now U.S. Pat. No. 8,072,994.
BACKGROUND
0008Many people use mobile or wireless end-user computer-type devices for a variety of purposes. These devices include smartphones, handheld computer-type devices, personal digital assistants (PDAs), laptop computers equipped with a wireless network interface card, etc. Users often use such devices to read and write email messages, access the Internet, download and view image or video files, run applications, etc.
0009In order to use such mobile devices, the mobile devices must be able to connect to a wireless network. Conventional wireless local area networks (WLANs) are often deployed inside structures such as homes, offices, public and commercial buildings, etc. The WLAN typically comprises one or more wireless access points, such as a wireless router or hot spot, which communicates wirelessly with the mobile device, and allows the mobile device to connect to a wired network (or other network) that is also in communication with the access point. In order to stay connected to such WLANs, the mobile user must usually stay with the range of the access points. This often constrains the effective mobility of a wireless user. The mobile user must stay in the home, office or building to have wireless access to the WLAN, but if the mobile user leaves the premises, the mobile user may leave the range of the wireless access points and thereby lose connectivity to the network. For the IEEE 802.11 standard, also known as Wi-Fi, the range of such access points is about 50 meters for indoor environments and 100 meters for outdoor environments.
0010Some campuses and urban areas provide broader W-Fi coverage areas by placing a number of cooperating Wi-Fi hot spots throughout the campus or urban area. This provides the mobile user with greater wireless access as the mobile user generally can move around the campus/urban area while maintaining wireless connectivity. However, when the mobile user leaves the campus/urban area, the user may lose connectivity, thus constraining the wireless mobility of the user.
0011This dilemma has been addressed somewhat by cellular networks that allow mobile devices to communicate wireless data with such cellular networks using data communication standards, such as GSM/GPRS (Global System for Mobile Communications/General Packet Radio Service) or EDGE (Enhanced Data rates for GSM Evolution). Such cellular networks generally provide much broader coverage areas than WLANs or Wi-Fi area, so a mobile user will ordinarily have fewer restrictions on mobility when accessing such a cellular network. Further, cellular networks typically can accommodate roaming users by allowing users to stay connected as they travel from one cellular network to another.
0012Nevertheless, mobile end-user devices often experience interruptions in service due to drop-offs by the network (either Wi-Fi or cellular network). This problem is exacerbated when the user is quickly moving between network cells, hot spots or networks. This can be caused, for example, (i) because the user's wireless access provider/protocol is not compatible with the new cell, hot spot or network, (ii) because the new cell, hot spot or network is overly congested with traffic, (iii) because of faulty hand-off procedures between the cells, hot spots, or networks, or many other reasons.
0013In addition, a mobile end-user may experience other types of performance problems, including a change of bit rate or bandwidth during the data transmission, and a change in the quality of service (e.g., jitter, latency, data loss, etc.).
0014Accordingly, there exists a need for a way to alleviate or mitigate the problems experienced by a user of mobile end-user device.
SUMMARY
0015In one general aspect, the present invention is directed to a mobile router. The mobile router may communication with one or more mobile devices via a local wireless network, such as a Wi-Fi or Wi-MAX network. The mobile router may further act as a gateway for communications from the mobile device to a backhaul network, which also in communication with the mobile router via a wireless communication link. The backhaul network may comprise a cellular network, such as a GSM/GPRS or UTMS network, or some other type of wireless network. The backhaul network may be connected to the Internet or other network (e.g., WAN). That way, the mobile device can communicate with a destination device connected to the Internet (or other network) via the mobile router and the backhaul network.
0016Further, because the mobile router wirelessly communicates with the backhaul network, it can move with the mobile device as the mobile device moves to provide enhanced mobile wireless connectivity for the mobile device. For example, the mobile router can be installed, affixed or otherwise placed in a vehicle, such as a car, bus, boat, rail car, etc., where the end user of the mobile device is a passenger (or driver). That way, the end user can maintain wireless activity as the user moves about.
0017According to various embodiments, the mobile router may comprise a session proxy module establishes two transport protocol sessions—one between the mobile router and the mobile device, and one between the mobile router and a destination device—when the end user seeks to communicate with the destination device through the mobile router. That way, if the session between the mobile router and a destination device goes down, the session between the mobile router and the mobile device may remain active, thereby allowing the mobile device to believe that the session is still active while the mobile router works to restore the session. Also, the two sessions may use different protocols. For example, the session between the mobile device and the mobile router may use the TCP protocol, whereas the session between the mobile router and the destination device may use a different protocol, such as HS-TCP or SCPS. Moreover, the establishment of the two sessions by the mobile router may be transparent to the end user. Also, the end user could have the option of disabling the session proxy functionality in certain embodiments. This may be desirable when the end user is using an application that encrypts the TCP headers.
0018Another potential benefit is that when the backhaul network goes down, the session proxy module may prevent the TCP session for the link to the mobile device <b>16</b> from starting its back-off timers. This is advantageous because, under the TCP protocol, the mobile device would normally assume that it cannot forward packets because of network congestion and it would accordingly start to slow down the user's session. In contrast, with the session proxy module maintaining a session between the mobile router and the mobile device that is separate from the session between the mobile router and the backhaul network, the mobile device may not assume that network congestion is a problem and the TCP session between mobile router and the mobile device may not slow down. Another potential benefit is that the TCP timers and congestion windows can be adjusted dynamically so that the link may be optimized for the particular characteristics of the backhaul network (e.g., packet loss, latency jitter, etc.).
0019In addition, the mobile router may comprise a session link module that monitors the layer 2 and/or layer 3 links of the mobile router with the backhaul network. That way, when the link monitor module detects a drop-off, the link monitor module can reestablish the link as quickly as possible in order to minimize the interruption in service to the end user. According to various embodiments, the link monitor module does this by sending and monitoring test (or probing) data packets over the backhaul wireless communication link. That way, the user does not have to restart his/her applications or sessions. The user just typically notices that the applications/sessions slowed for a brief period of time while the connection was being reestablished.
0020In addition, according to various embodiments, the mobile router may include a serial data port for communicating with a serial data device connected thereto. In addition, the mobile router may include a serial device data publication module which transmits data from the serial device over the backhaul network to a destination device, such as a server/database, such that remote users could access the database to retrieve the data from the serial device. The serial device could be, for example, a GPS receiver that records location data for the mobile router, or another type of serial data device. In addition, rather than transmitting the data to a server/database, a remote user could access the mobile router to access the data from the serial device directly. Additionally, the serial interface of the mobile router could be used to output data/command signals to the connected serial device.
0021These and other benefits will be apparent from the description to follow.
FIGURES
0022Various embodiments of the present invention are described herein by way of example in conjunction with the following figures, wherein:
0023<figref idref="DRAWINGS">FIG. 1</figref> is a block diagram of a network including a mobile router according to various embodiments of the present invention;
0024<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram of a mobile router according to various embodiments of the present invention; and
0025<figref idref="DRAWINGS">FIG. 3</figref> is a block diagram of the process flow of the link monitor module of the mobile router according to various embodiments of the present invention.
DESCRIPTION
0026<figref idref="DRAWINGS">FIG. 1</figref> is a diagram of a network <b>10</b> according to various embodiments of the present invention. As shown in <figref idref="DRAWINGS">FIG. 1</figref>, the network <b>10</b> comprises a mobile router <b>12</b> in communication with a mobile device <b>16</b> via a wireless communication link <b>14</b> (referred to sometimes hereinafter as the “local wireless communication link <b>14</b>”). The wireless communication link <b>14</b> may be provided as part of the wireless network <b>15</b> including the mobile router <b>12</b> and the mobile device <b>16</b>. The wireless network <b>15</b> (referred to sometimes hereinafter as the “local wireless network <b>15</b>”) may be, for example, a WiFi network (e.g., IEEE 802.11 network), a WiMAX network (IEEE 802.16), a Bluetooth network, or any other suitable wireless network.
0027The mobile device <b>16</b> may be any computer-based device capable of receiving and transmitting data via the wireless communication link <b>14</b>. For example, the mobile device <b>16</b> may be a laptop (or notebook) computer (as shown in the example of <figref idref="DRAWINGS">FIG. 1</figref>) equipped with a wireless network interface card, a wireless-enabled PDA, a pocket or palmtop computer, a WiFi phone (e.g., a Skype phone or VoIP phone), a WiFi appliance, a Sony PlayStation PSP or some other portable, network-enabled gaming station, a video screen, a digital camera, an audio player, a navigation device, a security camera, an alarm device, a wireless payment or POS device, etc.
0028The mobile router <b>12</b>, as explained further hereinbelow, may act as a gateway between the wireless network <b>15</b> and a backhaul network <b>20</b>. The backhaul network <b>20</b> in turn may be connected to the Internet <b>18</b> or any other network (such as an intranet or another WAN) via a gateway <b>24</b>.
0029The mobile router <b>12</b> may communicate with the backhaul network <b>20</b> via a backhaul wireless communication link <b>22</b> (sometimes referred to hereinafter as the “backhaul wireless communication link”). The backhaul wireless communication link <b>22</b> may be provided by a wireless network that is part of the backhaul network <b>20</b>, such as a cellular wireless network. The cellular wireless network may be, for example: a Global System for Mobile Communications/General Packet Radio Service (GSM/GPRS) link; a UMTS (Universal Mobile Telecommunications System) link; a Code Division Multiple Access (CDMA) link; an Evolution-Data Optimized (EV-DO) link; an Enhanced Data Rates for GSM Evolution (EDGE) link; a 3GSM link; a Digital Enhanced Cordless Telecommunications (DECT) link; a Digital AMPS (IS-136/TDMA) link; an Integrated Digital Enhanced Link (iDEN) link; a WiMAX link; or any other suitable wireless link. That way, the mobile router <b>12</b> may provide wireless access for the mobile device <b>16</b> to the Internet <b>18</b> (or other desired network).
0030According to various embodiments, the mobile router <b>12</b> and the mobile device <b>16</b> are co-located in a moving vehicle so that mobile router <b>12</b> is mobile and so that end-users of the mobile device <b>16</b> can enjoy wireless connectivity to the Internet <b>18</b> via the mobile router <b>12</b> as the vehicle (not shown) moves through cells or nodes associated with the wireless network <b>22</b>. The moving vehicle could be, for example, a car, a truck, a bus, a boat, a train or rail car, etc. The mobile router <b>12</b> may be mounted to the vehicle in a secure and generally tamper-resistant location. For example, the mobile router <b>12</b> may be mounted in the trunk of an automobile, and the end-user of the mobile device <b>16</b> may be a passenger or driver of the automobile. That way, the end-user could enjoy wireless connectivity as the automobile moves between cells of the wireless network <b>22</b>.
0031Also, although only one mobile device <b>16</b> is shown in communication with the mobile router <b>12</b> in <figref idref="DRAWINGS">FIG. 1</figref>, it should be noted that numerous mobile devices <b>16</b> may be in communication with the mobile router <b>12</b> via the network <b>14</b>. For example, in a scenario where the mobile router <b>12</b> is routed in an automobile, more than one passenger may be using an end-user mobile device <b>16</b> that communicates with the Internet <b>18</b> (or some other network) via the mobile router <b>12</b> and the backhaul network <b>20</b>. For example, one passenger could be checking email on a palmtop computer device, while another passenger may be surfing the World Wide Web, etc.
0032It should also be recognized, however, that the mobile router <b>12</b> does not necessarily need to be installed in, affixed to, or otherwise placed in a mobile vehicle. For example, a user could use the mobile router <b>12</b> at home, work, or any other stationary location, or carry the mobile router <b>12</b> around with him/her.
0033As shown in <figref idref="DRAWINGS">FIG. 1</figref>, a transceiver <b>30</b> may receive and transmit the wireless signals to the mobile router <b>12</b> via the wireless communication link <b>22</b>. A communication network <b>32</b> of the backhaul network <b>20</b> may communicate with the Internet <b>18</b> (or other network) via one or more gateways <b>24</b>. The communication network <b>32</b> may include conventional network elements such as servers, routers, switch, etc., and may provide wireless network service for the mobile router <b>12</b>. Of course, although only one transceiver <b>30</b> is shown in <figref idref="DRAWINGS">FIG. 1</figref>, it should be recognized that the backhaul network <b>20</b> may comprise a number of such transceivers, located in different areas serviced by the backhaul network <b>20</b>, such that the mobile router <b>12</b> may stay in communication with the backhaul network <b>20</b> as the mobile router <b>12</b> moves between cells or nodes of the backhaul network <b>20</b>.
0034As shown in <figref idref="DRAWINGS">FIG. 1</figref>, third party servers <b>26</b> may be in communication with the Internet (or other network) <b>18</b>. That way, the mobile device <b>16</b> can access the third party servers <b>26</b> through the mobile router <b>12</b> and the backhaul network <b>20</b>.
0035<figref idref="DRAWINGS">FIG. 2</figref> is a simplified block diagram of the mobile router <b>12</b> according to various embodiments of the present invention. As shown in <figref idref="DRAWINGS">FIG. 2</figref>, the mobile router <b>12</b> may comprise one or more processors <b>40</b>, one or more memory units <b>42</b>, a backhaul network interface <b>44</b>, and a local network interface <b>46</b>, that may be connected via a system bus <b>48</b>.
0036The backhaul network interface <b>44</b> is for interfacing with the backhaul network <b>20</b>. The local network interface <b>26</b> for interfacing with the wireless network <b>15</b>. The type of backhaul network interface <b>44</b> may depend on the types of backhaul wireless communication link <b>22</b> used. For example, the backhaul interface network <b>44</b> may be a GSM/GPRS interface, a UTMS interface, an EDGE interface, a Wi-MAX interface, etc. Similarly, the type of local network interface <b>46</b> may depend on the type of wireless network <b>15</b> used. For example, the local network interface <b>15</b> may be a Wi-Fi, Wi-MAX, or Bluetooth interface.
0037The processor(s) <b>40</b> may execute instruction code stored in the memory <b>42</b>. The memory <b>42</b> may be embodied as one or more computer-readable media, including Read-Only-Memory (ROM) and/or Random-Access-Memory (RAM). As such, the memory <b>42</b> may comprise one or more memory chips, optical memory devices (e.g., CD-ROM), magnetic memory devices (e.g., disk drives), etc. The memory <b>42</b> may include a number of software modules, including a routing module <b>50</b>, a link monitor module <b>52</b>, a session proxy module <b>54</b> and a serial port data publisher module <b>56</b>, that may be implemented as software code to be executed by the processor(s) using any suitable computer instruction type. The software code may be stored as a series of instructions or commands, or as a program, in the memory <b>42</b>.
0038The routing module <b>50</b> may include the code for allowing the mobile router <b>12</b> to route data packets from the wireless network <b>15</b> to the backhaul network <b>20</b>, and vice versa, as is known in the art. The link monitor module <b>52</b>, as explained further below, may monitor the layer 2 (data link or cellular layer) and layer 3 (IP or network layer) links of the mobile router <b>12</b> with the backhaul network <b>20</b> by sending test or probing data packets. By monitoring the packets, the link monitor module <b>52</b> can detect if either (or both) of the links fails. That way, the mobile router <b>12</b> can take appropriate action when one of the links fails.
0039According to various embodiments, both the local wireless communication link <b>14</b> and the backhaul wireless communication link <b>22</b> may use the TCP (Transmission Control Protocol) transport protocol for the session layer of the network protocols. TCP is one of the core protocols of the Internet protocol suite, often simply referred to as “TCP/IP.” Using TCP, applications on networked hosts can create connections to one another, over which they can exchange streams of data using stream sockets. Stream sockets are a type of internet socket which provides a connection-oriented, sequenced, and unduplicated flow of data without record boundaries. The TCP protocol guarantees reliable and in-order delivery of data from sender to receiver.
0040The TCP protocol also uses a network congestion avoidance algorithm in order to achieve congestion avoidance. A number of such algorithms exists and can be used. In general, according to some algorithms, the TCP protocol specifies a maximum segment size (MSS). The sender maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end. To avoid congestion collapse, TCP makes a slow start when the connection is initialized and after a timeout. It starts with a window of 2 MSS. Although the initial rate is low, the rate of increase is very rapid: for every packet ACKed, the congestion window increases by 1 MSS so that for every round trip time, the congestion window has doubled. When the congestion window exceeds a threshold, or a packet is lost, the algorithm enters a new state, called congestion avoidance. As long as non-duplicate ACKs are received, the congestion window is additively increased by one MSS every round trip time. When a packet is lost, duplicate ACKs will be received. The congestion window is reduced to 1 MSS on a timeout event.
0041The session proxy module <b>54</b>, as explained further below, may act as a TCP proxy for all TCP sessions going through the mobile router <b>12</b>. That way, according to various embodiments as described below, all end-user traffic between the end-user mobile device <b>16</b> and the destination (e.g., a server connected to the Internet or other network <b>18</b>) may be transparently routed through the mobile router <b>12</b>. Of course, in other embodiments, the local and backhaul wireless links <b>14</b>, <b>22</b> may use a different transport protocol, and, in such embodiments, the session proxy module <b>54</b> may similarly act as a proxy for such other transport protocol sessions.
0042The serial port data publisher module <b>56</b> may make data received from a serial device <b>36</b>, connected to a serial port <b>38</b> of the mobile router <b>12</b>, available from the mobile router <b>12</b> via a TCP stream (or any other type of data stream available from the mobile router <b>12</b>).
0043Other, conventional components of a router, such as a memory controller, are not illustrated in <figref idref="DRAWINGS">FIG. 2</figref> for the sake of convenience.
0044As mentioned before, the link monitor module <b>52</b> may monitor the mobile router's layer 2 (data link or cellular layer) and layer 3 (IP or network layer) links with the backhaul network <b>20</b>. That way, when the link monitor module <b>52</b> detects a drop-off, the link monitor module <b>52</b> can reestablish the link as quickly as possible in order to minimize the interruption in service to the end user. For example, in typical present-day mobile computing scenarios, when the network drops off, the end-user's applications and network sessions are ordinarily terminated. Consequently, the user has to restart the applications and/or session when the network connection is reestablished. Moreover, it typically is not predictable when the network connection will be reestablished.
0045The link monitor module <b>52</b> overcomes these drawbacks by monitoring the layer 2 and 3 links, and reestablishing the connections when connectivity is lost. As explained in more detail below, the link monitor module <b>52</b> may do this by sending and monitoring test (or probing) data packets over the backhaul wireless communication link <b>22</b>. When it detects a failure in one or both of the links, the link monitor module <b>52</b> can take remedial action, such as attempting to reestablish the link. It may reestablish the link before applications on the mobile device <b>16</b> have to be restarted. That way, the user does not have to restart his/her applications or sessions. The user just typically notices that the applications/sessions slowed for a brief period of time while the connection was being reestablished.
0046The link monitor module <b>52</b> may utilize adaptive programming according to various embodiments. That is, for example, if the backhaul network interface <b>44</b> is receiving packets over the backhaul wireless communication link <b>22</b>, the link monitor module <b>52</b> may send less probing packets and, conversely, if the interface <b>44</b> is not receiving packets the link monitor module <b>52</b> may send more probing packets. By monitoring packets coming in on the interface <b>44</b>, the link monitor module <b>52</b> may draw the assumption that the interface is functioning. This means that the link monitor module <b>52</b> does not have to send test packets across the backhaul wireless communication link <b>22</b> to verify connectivity (and hence not wasting precious network resources). However, just because the link monitor module <b>52</b> may assume that the interface <b>44</b> is functioning does not mean that the link monitor module <b>52</b> does not send test packets; it may just send them less frequently in certain embodiments.
0047The link monitor module <b>52</b> may monitor the interface <b>44</b> to see if it is receiving data packets. If it is not, then the link monitor module <b>52</b> may sleep “A” number of seconds and then proceed to the next step of doing an active probe. If the interface <b>44</b> is receiving packets, the link monitor module <b>52</b> may then sleep longer (e.g., 10.times.A seconds) before it proceeds to the next step of doing an active probe. So if the backhaul wireless communication link <b>22</b> looks like it is working, then the link monitor module <b>52</b> may send fewer active probes on the backhaul network <b>20</b>.
0048The remote devices that the link monitor module <b>52</b> is to monitor may be configured to allow the link monitor module <b>52</b> to ensure whether the link to the particular remote device is available. For example, links to the default route, domain name server (DNS), and/or authentication server <b>19</b> (see <figref idref="DRAWINGS">FIG. 1</figref>) may be monitored, as well as any device other device on the Internet so configured.
0049<figref idref="DRAWINGS">FIG. 3</figref> is a flow chart of the process flow of the link monitor module <b>52</b> according to various embodiments of the present invention. This process may be continually running in the background to monitor the layer 2 and layer 3 links on the backhaul wireless communication link <b>22</b> of the mobile router <b>12</b>.
0050At block <b>80</b>, the link monitor module <b>52</b> may determine what its backhaul network <b>20</b> is (e.g. whether it is a GSM/GPRS network interface, a UTMS network interface, etc.). Next, at block <b>82</b>, the link monitor module <b>52</b> may determine if the appropriate backhaul network driver is loaded. If not, at block <b>96</b>, the driver is reloaded and, if successful, the process returns to block <b>92</b> (described further below). If at block <b>82</b> it is determined that the driver is loaded, the process advances to block <b>84</b>, where the link monitor module <b>52</b> determines whether packets are being received on the backhaul network interface <b>44</b>. This is a check of its layer 3—or network layer—status (OCI Model). If so, the process advances to block <b>86</b>, where the link monitor module <b>52</b> goes into sleep mode for a brief period of time (xx seconds) because the network connection is active.
0051If at block <b>84</b> it is determined that packets are not being received over the backhaul wireless connection <b>22</b>, the process advances to block <b>88</b>, where the link monitor module <b>52</b> may determine if the layer 2, or data link layer, is established with a particular remote device (e.g., a device that is part of the communications network <b>32</b> or connected to the Internet <b>18</b>). In one embodiment, the point-to-point protocol (“PPP”) may be used for the layer 2 link (OCI Model). PPP is a protocol used to establish a direct connection between two nodes and is described by described by Internet Engineering Task Force (IETF) RFC 1661. Thus, at block <b>88</b>, the link monitor module <b>52</b> may determine of the PPP link is established. Of course, in other embodiment, a different direct link protocol could be used.
0052If the PPP link is not established, the process may advance to block <b>92</b>, where the PPP is restarted to establish the PPP link to the remote device. If that operation is successful, or if at block <b>88</b> it is determined that the PPP link is established, the process advances to block <b>90</b> where the link monitor module <b>52</b> determines if it has a default route to the remote device. In routing technology, a default route, also sometimes called a “gateway of last resort,” is the network route used by a router when no other known route exists for a given data packet's destination address. All the packets for destinations not known by the router's routing table are sent to the default route. This route generally leads to another router, which treats the packet the same way. If the route is known, the packet will get forwarded to the known route. If not, the packet is forwarded to the default-route of the router which generally leads to another router, and so on. Once the router with a known route to a host destination is reached, the router determines which route is valid by finding the most specific match. The network with the longest subnet mask that matches the destination IP address wins.
0053Hence, the default route may be a connection to the remote device that is different from the direct connection. If there is a default route, the process may advance to block <b>94</b>, where the link monitor module <b>52</b> may determine whether the remote device is reachable via the default route. If, at block <b>90</b> it is determined that there is no default route, the process may return to block <b>88</b> where the PPP link is attempted to be established.
0054The process also advances to block <b>90</b> from block <b>86</b> after the brief sleep period. If at block <b>90</b> it is determined that the mobile router <b>12</b> has a default route, the process advances to block <b>94</b> where the link monitor module <b>52</b> determines if the default route is reachable. If the default route is not reachable, the process returns to block <b>88</b>, wherein the PPP link is attempted to be reestablished.
0055If at block <b>92</b> the PPP protocol is unable to be restarted after x number of attempts, the process advances to block <b>96</b>, where the card driver for the backhaul network interface <b>44</b> is reloaded. If at block <b>66</b> the card driver is not successfully loaded after a number (“x”) of attempts, the process advances to block <b>98</b>, where the link monitor module <b>52</b> attempts to reload the CardBus driver (or other similar driver for mobile routers that do not use CardBus). A CardBus is PCMCIA (Personal Computer Memory Card International Association) 5.0 or later (e.g., JEIDA 4.2 or later) 32-bit PCMCIA card. CardBus is effectively a 32-bit, 33 MHz PCI (Peripheral Component Interconnect) bus in the PC card form factor. CardBus includes bus mastering, which allows a controller on the bus to talk to other devices or memory without going through the CPU.
0056If that process is successful, the process returns to block <b>96</b>, where the card driver is again attempted to be reloaded. If at block <b>98</b> attempts are unsuccessful in reloading the CardBus driver (or other similar driver), the process, according to various embodiments, advances to block <b>100</b>, wherein the mobile router <b>12</b> is rebooted. From there, the process may return back to block <b>80</b>.
0057Returning to block <b>94</b>, where it is determined if the default route is reachable, if it is not available, the process may advance, according to various embodiments, to block <b>102</b>, where the domain name server (DNS) for the mobile router is determined. Then, at block <b>104</b>, it is determined whether the DNS is reachable. If it is, according to various embodiments, at block <b>106</b>, the authentication server <b>19</b> (see <figref idref="DRAWINGS">FIG. 1</figref>) for the mobile router <b>12</b> is determined. Then, at block <b>108</b>, it is determined whether the authentication server <b>19</b> is reachable. If so, the process advances to block <b>110</b>, where the link monitor module <b>52</b> enters brief sleep mode, during which no test packets are sent. After the brief sleep, the process returns to block <b>84</b> for a re-check of the layer 3 link.
0058If the DNS server is not reachable at block <b>104</b> or if the authentication server is not reachable at block <b>108</b>, the process returns to block <b>88</b>, where the PPP link (layer 2 link) is assessed, as explained above.
0059Some parameters in the process may be configurable. For example, certain time periods used by the various timers may be configurable. The parameters may be factory configurable, remotely configurable over a network, and/or self-adapting. In addition, in various embodiments, the user may be able to configure certain parameters.
0060In addition, the process can be fine-tuned and optimized for a particular backhaul network and/or usage pattern. The objective of the tuning and optimization may be to deliver the highest data throughput, fastest network drop-off detections, and fastest network reconnection. For example, the targets being probed can be changed. For example, the mobile router <b>12</b> may probe the session manager <b>29</b> in a network operations center (NOC) <b>30</b> (see <figref idref="DRAWINGS">FIG. 1</figref>), or other devices connected to the network <b>18</b>. Also, rather than active probing, the mobile router <b>12</b> may only listen to the backhaul network interface <b>44</b>. This latter approach may be advantageous when the network <b>18</b> is a WAN (or other type of network) with low bandwidth.
0061The point-to-point protocol (“PPP”) startup script may execute continuously until it makes a successful connection. The failure that is shown in <figref idref="DRAWINGS">FIG. 3</figref> at block <b>88</b> is if the PPP startup script is not successful in communicating with the backhaul network card x number of times. If the PPP startup script cannot make a connection it likely is because the mobile router <b>12</b> is out of coverage and not because it or the network failed. However, if PPP connection is unable to be established after a relatively long duration (e.g., over one hour), the link monitor module <b>52</b> may proceed with the failure path (step <b>92</b>).
0062A common problem experienced in the prior art by cellular network users is that the data connection is sometimes lost. When this occurs, applications running on the mobile device (that is connected to the cellular network) stop running, and have to be restarted when the TCP session is re-established.
0063This problem can be overcome by the session proxy module <b>54</b> of the mobile router <b>12</b>. Returning to <figref idref="DRAWINGS">FIG. 2</figref>, the session proxy module <b>54</b> may act as a session proxy for all sessions (e.g., TCP sessions) going through the mobile router <b>12</b>. That is, for example, when a local end-user seeks to establish a TCP session from their local end-user device (such as the mobile device <b>14</b><figref idref="DRAWINGS">FIG. 1</figref>) with a destination (such as a third party server <b>26</b> connected to the network <b>18</b>, see <figref idref="DRAWINGS">FIG. 1</figref>), the session proxy module <b>54</b> may terminate the TCP session coming from the mobile device <b>16</b> and, instead, establish a TCP (or some other protocol) session on the backhaul network interface <b>26</b> with the destination <b>26</b>. The mobile router <b>12</b> may also maintain a separate TCP session with the mobile device <b>16</b> over the local wireless communication link <b>14</b>. That way, all end-user traffic between the end-user and the destination may be transparently routed through the mobile router <b>12</b> on the two separate sessions. That way, one session going down (such as the backhaul wireless communication link <b>22</b>) need not negatively affect the other session (such as the session between the mobile router <b>22</b> and the mobile device <b>16</b>).
0064By doing this, several benefits may be achieved. For example, when the backhaul network link <b>22</b> goes down (which is sometimes not uncommon for cellular networks), the session proxy module <b>54</b> can maintain a TCP session to the local end user (e.g., at the mobile device <b>16</b>). That way, if applications running on the mobile device <b>16</b> are dependent upon a TCP session, the applications may continue to run because there is a TCP session with the mobile router <b>12</b>, even though the TCP session over the backhaul wireless communication link <b>22</b> is lost. When the backhaul network communication link <b>22</b> comes back, the end-user may be able to keep running its applications and session without having to restart the applications.
0065Another potential benefit is that when the backhaul network link <b>22</b> goes down, the session proxy module <b>54</b> can prevent the TCP session for the link to the mobile device <b>16</b> from starting its back-off timers. This is advantageous because, under the TCP protocol, the mobile device <b>16</b> would normally assume that it cannot forward packets because of network congestion and it would accordingly start to slow down the user's session. In contrast, with the session proxy module <b>54</b> maintaining a TCP session between the mobile router <b>12</b> and the mobile device <b>16</b>, the mobile <b>16</b> device would not assume that network congestion is a problem and the TCP session between mobile router <b>12</b> and the mobile device <b>16</b> the should not slow down.
0066Another potential benefit is that the TCP timers and congestion windows can be adjusted dynamically so that the link is optimized for the particular characteristics of the backhaul network (e.g., packet loss, latency jitter, etc.). For example, if the network has a high packet loss, the MTU (maximum transmission unit) may be made smaller to increase the likelihood that sent data packets will successfully reach their destination. “MTU” refers to the size (in bytes) of the largest data packet that a given layer of a communications protocol can pass onwards. Alternatively, if the network has relatively little packet loss and high throughput, the MTU may be increased so as to further increase throughput.
0067In another embodiment, instead of a TCP session, the session proxy module <b>54</b> could establish a different type of protocol session with the user's destination that is designed to run over high latency links. Such high-latency links may be HS-TCP (High Speed TCP) or SCPS (Space Communications Protocol Specifications). HS-TCP uses a new congestion control algorithm for TCP that is described in RFC 3649. The SCPS is set of extensions to existing protocols and new protocols developed by the Consultative Committee for Space Data Systems (CCSDS). The SCPS protocol is defined in ISO Standards 15894 (file transfer), 15893 (transport layer), 15892 (security layer) and 15891 (network layer).
0068In such an embodiment, therefore, there may be a TCP session between the mobile device <b>16</b> and the mobile router <b>12</b> over the local wireless communication link <b>14</b>, and a separate high latency protocol session (e.g., HS-TCP or SCPS) between the mobile router <b>12</b> and the destination over the backhaul network <b>20</b>. Moreover, the establishment of the high-latency link on the backhaul network <b>20</b> may be done transparently to the local end-user by the session proxy module <b>54</b>.
0069In addition, in various embodiments, the local end-user could be given the option of disabling the session proxy module <b>54</b>. A user of the mobile device <b>16</b> may disable the session proxy module <b>54</b>, for example, through a control panel for the mobile router <b>12</b> displayed on the mobile device. Also, the mobile router <b>12</b> may have a switch or push-button that allows a user to disable the session proxy module <b>54</b>. It may be desirable for a user to disable the session proxy module <b>54</b> when the user wants to maintain a TCP session with the destination. For example, certain types of virtual private networks (VPNs), such as IPSEC VPNs, encrypt the TCP headers. IPSEC (IP security) is a suite of protocols for securing Internet Protocol (IP) communications by authenticating and/or encrypting each IP packet in a data stream. If the TCP headers were encrypted, the session proxy module <b>54</b> would ordinarily not be able to decrypt the headers of the TCP data packets and, therefore, could not appropriately transmit the packets on a non-TCP session. In such a circumstance, the user may desire to disable the session proxy module <b>54</b>. Other types of VPNs, however, such as secure sockets layer (SSL) VPNs, do not encrypt the TCP headers, so the local end-user may not want or need to disable the session proxy module <b>54</b> when such a SSL VPN is being used.
0070Referring to <figref idref="DRAWINGS">FIG. 2</figref>, the serial port data publisher module <b>56</b> may take data received from the serial device <b>36</b> connected to the serial port <b>38</b> of the mobile router <b>12</b> and make the data available via a TCP stream (or some other type of data stream, such as HS-TCP or SCPS data stream). The serial port data publisher module <b>56</b> and, via the backhaul network <b>20</b> and Internet <b>18</b>, populate a remote database <b>25</b> with the data from the device <b>36</b>. That way, the data from the serial device <b>36</b> can be remotely accessed via the Internet <b>18</b>.
0071The serial device <b>36</b> may communicate with the mobile router <b>12</b> using any suitable serial data protocol, including the USB (Universal Serial Bus) standard, the RS-232 standard, the RS-485 standard, or the IEEE 1394 (FireWire) standard, for example.
0072The serial device <b>36</b> may be any suitable type of serial device, such as, for example, a GPS receiver. In an embodiment where the serial device <b>36</b> is a GPS receiver, this allows the location data for the GPS receiver (and hence the location data for the mobile router <b>12</b>) to be remotely accessible by others. In an application where the mobile router <b>12</b> is installed in a mobile vehicle such as a car or truck, such location data could be used for a variety of applications, including:
0073a company could access the database <b>25</b> to determine the current location of its vehicles;
0074a company could determine and analyze where its vehicles have been, including such things as determining time spent in traffic jams, loading docks, etc.;
0075track a stolen vehicle;
0076determining optimal routes for delivery companies;
0077collection of real-time traffic data, which can be analyzed and/or shared with traffic condition publication services; or
0078collection of historical traffic data, which could be used for traffic planning purposes.
0079In various embodiments, the stream produced by the serial port data publisher module <b>56</b> may be compliant with a protocol standard, such as the RFC 2217 “Telnet Com Port Control Option” protocol, so that end-user devices that support the standard could use the data. This may be useful for Windows-based computers, because such computers could use standard, off-the-shelf mapping applications with a GPS device to be attached to the local machine. The end-user could install a RFC 2217 compliant driver on their Windows computer and could make the GPS data from the mobile router <b>12</b> appear as local GPS data on their Windows computer. And since the GPS data from the mobile router <b>12</b> would be accessible over an IP network (e.g., the Internet <b>18</b>), the remote user's Windows computer could access the data from anywhere on the Internet.
0080The above-described examples were based on a GPS device as the serial device <b>36</b> connected to the mobile router <b>12</b>. It should be recognized that other types of serial data devices <b>36</b> may be used and similar data publication processes could be used for such serial data devices so that the data from the serial device may be accessed via the Internet (or other network) <b>18</b>. For example, in other embodiments the serial device <b>36</b> may be a vehicle telematics device. Such a vehicle telematics device may capture data regarding the performance and operation of the vehicle (e.g., diagnostic data) in which the device is installed. Such data may then be published by the mobile router <b>12</b> and stored in the database <b>25</b>, for example, such that it is accessible by third parties via the Internet <b>18</b>.
0081In another embodiment, the serial device <b>36</b> may be a point-of-sale (POS) device that captures sale or payment information. That way, the POS data may be published to the database <b>25</b> such that it is accessible via the Internet <b>18</b>.
0082In other embodiments, the serial data device <b>36</b> could be, for example, a remote control for an in-car entertainment system (e.g., downloading music, video, games, etc., to third party systems) or a device for interfacing to existing communication systems (e.g., police radios, etc.).
0083In addition, rather than transmitting the data to a central server (e.g., database <b>25</b>), a remote user could access the mobile router <b>12</b> to access the data from the serial device <b>36</b> directly. For example, in one embodiment, an authenticated remote user could access an authentication server <b>23</b> (see <figref idref="DRAWINGS">FIG. 1</figref>) to determine the address of the mobile router <b>12</b>. The remote user could then use that address to communicate with the mobile router <b>12</b> directly. Similarly, a local end-user of the mobile router <b>12</b> could access the data from the serial device via the local wireless network <b>14</b>.
0084Additionally, according to various embodiments, the serial interface <b>38</b> of the mobile router <b>12</b> can be used to output data/command signals to the connected serial device <b>36</b>. For example, from a remote location a signal/message can be sent to the mobile router <b>12</b> in order to have the signal/message sent output by the serial port <b>38</b> to the serial device, where the signal/message causes the serial device <b>36</b> to take some sort of action. For instance, the signal/message may activate the serial device <b>36</b>. For example, where the mobile router <b>12</b> is installed in a car, the serial device <b>36</b> may be device capable of controlling components and/or systems of the car. For example, the serial device <b>36</b> may be able to shut of the engine (such as in the case of theft), unlock the doors in case of inadvertent locking, activate alarm functions, etc. The serial device <b>36</b> may also, according to various embodiments, perform payment functions, download data, receive advertising, entertainment, gaming, and/or information, as well as perform network management and control.
0085While various embodiments of the present invention have been described herein, it should be recognized that other modifications, substitutions and alternatives may be apparent to one of ordinary skill in the art. For example, certain of the steps of <figref idref="DRAWINGS">FIG. 3</figref> may be performed in different order or simultaneously. Such modifications, substitutions and alternatives can be made without departing from the spirit and scope of the invention.
Contents5
4 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2005102529A1 | Cites | United States of America | Search report |
| US2005181792A1 | Cites | United States of America | Search report |
| US2008186897A1 | Cites | United States of America | Search report |
| US2009219900A1 | Cites | United States of America | Search report |
| US7346025B2 | Cites | United States of America | Search report |
| US20050102529A1 | Cites | United States of America | Search report |
| US20050181792A1 | Cites | United States of America | Search report |
| US20080186897A1 | Cites | United States of America | Search report |
| US20090219900A1 | Cites | United States of America | Search report |
95 members in 5 offices
Members95
| Document | Office | Kind | |
|---|---|---|---|
| WO2007136618A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2007136620A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2007136621A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2007136618A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2007136620A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO2007136621A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP2018711A2 | European Patent Office (EPO) | A2 | |
| EP2018773A2 | European Patent Office (EPO) | A2 | |
| EP2021943A2 | European Patent Office (EPO) | A2 | |
| CN101473315A | China | A | |
| CN101473551A | China | A | |
| CN101480078A | China | A | |
| JP2009538043A | Japan | A | |
| JP2009538044A | Japan | A | |
| JP2009538045A | Japan | A | |
| US2010014415A1 | United States of America | A1 | |
| US2010118846A1 | United States of America | A1 | |
| US2011013605A1 | United States of America | A1 | |
| US8072994B2 | United States of America | B2 | |
| US2012020245A1 | United States of America | A1 | |
| US2012020341A1 | United States of America | A1 | |
| US2012026995A1 | United States of America | A1 | |
| US8189552B2 | United States of America | B2 | |
| US2012155251A1 | United States of America | A1 | |
| US2012155252A1 | United States of America | A1 | |
| US2012155448A1 | United States of America | A1 | |
| US2012155449A1 | United States of America | A1 | |
| US2012155450A1 | United States of America | A1 | |
| US2012163361A1 | United States of America | A1 | |
| US2012202451A1 | United States of America | A1 | |
| US2012202452A1 | United States of America | A1 | |
| US2012202453A1 | United States of America | A1 | |
| US2012203914A1 | United States of America | A1 | |
| US2012203915A1 | United States of America | A1 | |
| US2012204057A1 | United States of America | A1 | |
| US2012207142A1 | United States of America | A1 | |
| US2012208497A1 | United States of America | A1 | |
| US2012208498A1 | United States of America | A1 | |
| US2012208499A1 | United States of America | A1 | |
| US2012257525A1 | United States of America | A1 | |
| US2012257526A1 | United States of America | A1 | |
| US2012257573A1 | United States of America | A1 | |
| US2012257607A1 | United States of America | A1 | |
| US2012263159A1 | United States of America | A1 | |
| US2012320891A1 | United States of America | A1 | |
| US2012320892A1 | United States of America | A1 | |
| US2012322433A1 | United States of America | A1 | |
| US2012322462A1 | United States of America | A1 | |
| US2012322463A1 | United States of America | A1 | |
| US8537800B2 | United States of America | B2 | |
| US8542661B2 | United States of America | B2 | |
| US8605698B2 | United States of America | B2 | |
| US8750274B2 | United States of America | B2 | |
| US8767693B2 | United States of America | B2 | |
| US8817599B2 | United States of America | B2 | |
| US8817762B2 | United States of America | B2 | |
| US8817763B2 | United States of America | B2 | |
| US8817764B2 | United States of America | B2 | |
| US8817765B2 | United States of America | B2 | |
| US8824438B2 | United States of America | B2 | |
| US2014247122A1 | United States of America | A1 | |
| US2014250528A1 | United States of America | A1 | |
| US2014250529A1 | United States of America | A1 | |
| US2014250530A1 | United States of America | A1 | |
| US2014250531A1 | United States of America | A1 | |
| US8830974B2 | United States of America | B2 | |
| US8830975B2 | United States of America | B2 | |
| US8837446B2 | United States of America | B2 | |
| US8842650B2 | United States of America | B2 | |
| US8873528B2 | United States of America | B2 | |
| US8873529B2 | United States of America | B2 | |
| US8885625B2 | United States of America | B2 | |
| US2014337976A1 | United States of America | A1 | |
| US2015016244A1 | United States of America | A1 | |
| US8995254B2 | United States of America | B2 | |
| US8995412B2 | United States of America | B2 | |
| US9014160B2 | United States of America | B2 | |
| US9078097B2 | United States of America | B2 | |
| US9100789B2 | United States of America | B2 | |
| US9148758B2 | United States of America | B2 | |
| US9204327B2 | United States of America | B2 | |
| US9288606B2 | United States of America | B2 | |
| US9288637B2 | United States of America | B2 | |
| US9369552B2 | United States of America | B2 | |
| US2016227374A1 | United States of America | A1 | |
| US2016295632A1 | United States of America | A1 | |
| US9578672B2 | United States of America | B2 | |
| US9762600B2 | United States of America | B2 | |
| US9776597B2 | United States of America | B2 | |
| US9787694B2 | United States of America | B2 | |
| US9787702B2 | United States of America | B2 | |
| US9787703B2 | United States of America | B2 | |
| US9813436B2 | United States of America | B2 | |
| US2017359847A1 | United States of America | A1 | |
| US10104711B2This record | United States of America | B2 |
48 transactions on the USPTO file
Allowed after 1 non-final rejection.
- Non-final rejections
- 1
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Maintenance Fee Reminder MailedREM. | REM. | |
| Payment of Maintenance Fee, 4th Year, Large EntityM1551 | M1551 | |
| Post Issue Communication - Certificate of CorrectionN423 | N423 | |
| Mail Certificate of Correction MemoMCOCM | MCOCM | |
| Certificate of Correction MemoCOCM | COCM | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Printer Rush- No mailingTCPB | TCPB | |
| Printer Rush- No mailingTCPB | TCPB | |
| Pubs Case Remand to TCPUBTC | PUBTC | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Reasons for AllowanceEX.R | EX.R | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Response after Non-Final ActionA... | A... | |
| Terminal Disclaimer FiledDIST | DIST | |
| Terminal Disclaimer FiledDIST | DIST | |
| Terminal Disclaimer FiledDIST | DIST | |
| Terminal Disclaimer FiledDIST | DIST | |
| Terminal Disclaimer FiledDIST | DIST | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Application ready for PDX access by participating foreign officesCCRDY | CCRDY | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Dispatched from OIPEOIPE | OIPE | |
| FITF set to YES - revise initial settingFTFS | FTFS | |
| Application Is Now CompleteCOMP | COMP | |
| Filing Receipt - UpdatedFLRCPT.U | FLRCPT.U | |
| Patent Term Adjustment - Ready for ExaminationPTA.RFE | PTA.RFE | |
| Payment of additional filing fee/PreexamFLFEE | FLFEE | |
| Mail Pre-Exam NoticeMPEN | MPEN | |
| Notice Mailed--Application Incomplete--Filing Date AssignedINCD | INCD | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Cleared by OIPE CSRL194 | L194 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Entity Status Set To Undiscounted (Initial Default Setting or Status Change)BIG. | BIG. | |
| Initial Exam Team nnIEXX | IEXX |
5 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Fee payment procedureMAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| Maintenance fee paymentMAFP | MAFP | |
| Certificate of correctionCC | CC | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS |
Numbers
- Publication
- 10104711
- Application
- 15437847
Titles
- English
- Mobile router with session proxy
Patent term adjustment
- Net adjustment
- 0 days
Classification
- CPC, 17
- H04W76/19
- H04L12/66
- H04W76/18
- H04L12/2856
- H04L43/50
- H04W76/25
- H04L67/28
- H04L67/2861
- H04L67/56
- H04L67/59
- H04L69/40
- H04W24/08
- H04W84/005
- H04W84/042
- H04W84/12
- H04W88/10
- H04W88/16
- IPC, 15
- H04W76 19
- H04W76 18
- H04L12 66
- H04L12 26
- H04W24 08
- H04W76 25
- H04L12 28
- H04L29 08
- H04L29 14
- H04W84 00
- H04W84 12
- H04W88 10
- H04W88 16
- H04W84 04
- H04L69 40
- USPC, 1
- 370328000