INTEGRATED INTERNET ACCESS ROUTER

An integrated access router includes a modem for communicating with a wireless network. The integrated access router also includes a cellular gateway, comprising a switch for routing data via the modem. The integrated access router also includes a server comprising one or more processors, one or more computer-readable tangible storage devices, and program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors. The program instructions include a primary networking operating system for providing networking and communication capabilities via an Ethernet connection. The program instructions further include a secondary networking operating system for extending the capabilities of the primary operating system and providing networking and communication capabilities via a non-Ethernet connection by serving as an intermediary between the primary networking operating system and an underlying server operating system.

BACKGROUND

Internet-enabled devices such as laptop computers, smartphones, and tablet computers are an integral part of everyday life for many people. Such devices are commonly used to communicate with others and to access a variety of products and services over the Internet, both for business as well as for entertainment purposes. For example, a tablet computer may be used to send an email, watch a streaming movie, or shop at an online retailer website. As such, Internet access availability is highly valued. Without Internet access, people may not be able to use such devices to communicate with one another or to access the products and services that may be relied on.

Because of the value of Internet access availability, business owners may increase customer satisfaction, which may result in increased revenue and market share, by offering Internet access to customers. For example, an owner or operator of a transportation service such as a bus or rail operator may increase a rider's satisfaction by offering Internet access to the rider while in transit. Solutions such as a Cisco Router exist for providing Internet access in a stationary location such as a coffee shop or a library. However, such solutions alone may not be reliable when deployed in a moving environment such as a train. Moreover, solutions exist to provide a rider with Internet access while in transit on a rail. For example, the ICOMERA X6 provides Internet access to passengers on a train. However, existing solutions rely on proprietary networking hardware which may have limited management tools and may be difficult and costly to configure and to maintain.

SUMMARY

The present subject matter relates to an integrated access router, including a modem for communicating with a wireless network. The integrated access router may include a cellular gateway. The cellular gateway may comprise or consist of a switch for routing data via the modem. The integrated access router may include a server. The server may comprise or consist of one or more processors, one or more computer-readable tangible storage devices, and/or program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors. The program instructions may include a primary networking operating system for providing networking and communication capabilities via an Ethernet connection. The program instructions may further include a secondary networking operating system for extending the capabilities of the primary operating system and providing networking and communication capabilities via a non-Ethernet connection by serving as an intermediary between the primary networking operating system and an underlying server operating system.

According to the present subject matter, a computer program product may also be provided and may include one or more computer-readable tangible storage devices, and program instructions stored on at least one of the one or more storage devices. The program instructions include a primary networking operating system for providing networking and communication capabilities via an Ethernet connection. The program instructions further include a secondary networking operating system for extending the capabilities of the primary operating system and providing networking and communication capabilities via a non-Ethernet connection by serving as an intermediary between the primary networking operating system and an underlying server operating system.

The present subject matter may be a system for routing network data includes one or more processors, one or more computer-readable tangible storage devices, and/or program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors. The program instructions may include a primary networking operating system for providing networking and communication capabilities via an Ethernet connection. The program instructions may also include a secondary networking operating system for extending the capabilities of the primary operating system and providing networking and communication capabilities via a non-Ethernet connection by serving as an intermediary between the primary networking operating system and an underlying server operating system.

DETAILED DESCRIPTION

FIG. 1illustrates a system100for providing Internet access in a moving environment, such as in a train102. It should be appreciated that, although a train102is illustrated, the system100may similarly be deployed in other suitable moving environments where Internet access may be desirable, such as in a bus, in an airplane, and so on.

System100includes an integrated Internet access router104configured to provide one or more computing devices, such as a smartphone106or a laptop computer108, with access to the Internet110. It should be appreciated that although the smartphone106and the laptop computer108are illustrated as being in wireless communication with the integrated Internet access router104, these or other computing devices may also communicate with integrated Internet access router104via a wired connection.

In one example, system100may further include a switch (not shown) in communication with the integrated Internet access router104. The switch may be positioned in a second train compartment or at any second location in order to provide additional computing devices with access to the Internet110via the integrated Internet access router104when the additional computing devices may not be within range of communicating with integrated Internet access router104directly.

In order to facilitate a connection to the Internet110while the train102is in motion, the integrated Internet access router104is configured to leverage a cellular network112such as a 3G, 4G, or an LTE network. In one example, while the train102is stationary at a train station114or another location having a Wi-Fi network, the integrated Internet access router104may leverage the Wi-Fi network of the train station114in order to facilitate a connection to the Internet110.

It should be appreciated that, although the integrated Internet access router104is described as functioning to provide Internet access to computing devices, the integrated Internet access router104may also be leveraged for other purposes. For example, the integrated Internet access router104may be used to provide media and other entertainment content to passengers of the train102. The integrated Internet access router104may also be used to provide location-based services such as a hotel-booking feature and advertising features. The integrated Internet access router104may also be used to facilitate security features on the train102such as video surveillance.

FIG. 2illustrates an example integrated Internet access router (hereinafter referred to as “router”)104ofFIG. 1. A top maintenance cover (not shown) has been removed from router104for illustrative purposes. The router104includes an enclosure202that protects the internal components from external environmental hazards. In one example, the enclosure202complies with EN50155 standards for railway and meets specific electromagnetic, fire, and shock capabilities. The enclosure202comprises any suitable material for complying with the EN50155 railway standard.

The router104integrates a server204with a cellular gateway206into a single device that can be easily deployed and maintained to provide Internet access to one or more computing devices106and108. To facilitate communication, the router104includes several ports and interfaces on a front panel208as well as a rear panel (not shown).

FIG. 3illustrates the front panel208of the router104in more detail. The front panel208includes 6 Gigabit Ethernet ports302,304,306,308,310, and312. It should be appreciated that although Gigabit Ethernet ports are illustrated, the Ethernet ports302-312may be 10 mbps, 100 mbps, or other suitable transmission rates. In one example, the Ethernet ports302-312may vary in transmission rates while in another example, as illustrated, the Ethernet ports may all be the same. In one example, the Ethernet ports302-312are M12 X-code 8-way sockets.

The front panel208further includes a first console port314for enabling configuration of the server204. The front panel208further includes a second console port316for enabling configuration of the cellular gateway206. In one example, the first and second console ports314and316are M12 D-Code 4-way sockets.

The front panel further includes a removable storage port318for enabling router configurations to be easily installed, removed, updated, and swapped. In one example, the removable storage port is a USB port.

FIG. 4illustrates a rear panel402of the router104. The rear panel402includes multiple pairs of RF interface antenna ports404A-B,406A-B,408A-B,410A-B,412A-B, and414A-B. Each of the pairs of antenna ports404-414corresponds to a modem card (not shown). Each pair404-414includes a primary RF interface404A-414A that supports both transmitting and receiving communications and also includes a secondary RF interface404B-414B that only supports receiving communications. In one example, the interface ports404-414are SMA female antenna ports. The rear panel402further includes a power port416and a GPS port418.

FIG. 6illustrates a block diagram of the router104. The router104includes 6 modems502to communicate and receive data and provide Internet access over a wireless network. It should be appreciated that although six modems502are illustrated, the router104may support any suitable number of modems. In one example, the modems502are removable and can be accessed by removing a maintenance cover (not shown). In particular, if the router104travels across multiple geographic regions, the same modems502may not support all networks across the multiple regions. Therefore, appropriate modems502that correspond to present geographic regions may be swapped in.

In one example, the modems502may be dual SIM MPCI-L200 modem cards. The modems502may support suitable communication standards including multi-band LTE-FDD, HSPA+, and GPRS/EDGE. In one example, the modems502have an industry standard form factor such as a PCI Express Mini Card form factor. The modems502include two antenna RF antennas (not shown). In particular, a primary or main RF antenna supports both transmitting and receiving data while a secondary RF antenna supports receiving data only. The two antennas may be interfaced via RF interface antenna ports404A-B,406A-B,408A-B,410A-B,412A-B, and414A-B illustrated inFIG. 4.

In one example, modem swapping may not be required when the router104moves between different geographic regions. Rather, the router104may detect a current location and automatically utilize the appropriate modem502that corresponds to a network associated with the current location.

The router104further includes a cellular gateway504for routing data traffic between the router104and the Internet via the modems502. The cellular gateway504includes a switch506to help direct the path of the data being transmitted via the router104. In one example, the cellular gateway504interfaces with the modems502via USB.

The router104further includes a server508for hosting and executing router software. In particular, the server508includes a primary operating system510for providing networking and communications functionality for the router104. In one example, primary operating system510may be a Cisco operating system such as Cisco IOS5921. The primary operating system510leverages a Linux platform (not shown) provided by the server508.

A primary router operating system510, such as Cisco IOS, however, relies on the Linux platform to provide Ethernet connectivity only and is not capable of facilitating router communication over non-Ethernet connections. Thus, server508further includes a secondary operating system512to extend the functionality of the primary operating system510and to provide a communication interface to non-Ethernet connections.

The secondary operating system512runs on a virtual machine514monitored by hypervisor516. In order to extend the functionality of the primary operating system510, the secondary operating system512acts as an intermediary in between the primary operating system510and the underlying Linux platform. In particular, the secondary operating system512is configured to interpret and translate data and commands that the primary operating system510would otherwise not be capable of understanding. For example, the secondary operating system512is configured to interpret an SSID or an encryption key and to convert it to a data format that is understandable by the primary operating system510. Thus, by acting as an intermediary, the secondary operating system512is able to add Wi-Fi capabilities to the primary operating system510and, in turn, allow the router104to serve as a Wi-Fi access point.

In one example, the primary operating system510may be configured so as not to run in a virtualized environment. Accordingly, in order to extend the capabilities of the primary operating system510, the secondary operating system512may be configured to bypass the virtualization protection of the primary operating system510. In particular, the secondary operating system512may be configured to intercept and examine system function calls. If the function call is looking for indications of a virtualized environment, then an appropriate value will be returned. Otherwise, the function call will be passed through without any change.

In order to facilitate the secondary operating system512extending the primary operating system510, interfaces (not shown) of the primary operating system510are mapped to interfaces of the secondary operating system512. The interfaces are mapped automatically by the secondary operating system512during boot up. The mapped interfaces may include a combination of real Ethernet interfaces and interfaces dedicated for internal communications between the primary operating system510and the secondary operating system512. For example, a Cisco5921operating system that supports up to 12 interfaces (in three slots of four interfaces) may be mapped as illustrated in Table 1.

It should be appreciated that the secondary operating system512may serve to extend the primary operating system's510capabilities in additional ways. For example, the secondary operating system512may enable the router104to support additional features such as cellphone tethering, Harris radio tethering, synchronous serial communication, and VoIP.

It should also be appreciated that although the virtual machine514is illustrated as hosting the secondary operating system512, the virtual machine may also host other suitable software applications such as call management software and WAN acceleration software, as well as entertainment and advertising software, for example, in order to maximize hardware resources.

In one example, the router104is configured to interface with a removable storage device518via the removable storage port318illustrated inFIG. 3. The removable storage device518includes router configuration information. In one example, the removable storage device518has a USB interface.

Upon inserting the portable storage device502into the removable storage port318, the cellular gateway504mounts the removable storage device518and makes the contents of the removable storage device518available to the router104. Thus, the router104can be easily configured and reconfigured by swapping out the removable storage device518with one that has an alternate configuration. For example, when changes to the external network require changes to the router104configuration, this can be easily accomplished by swapping in a new removable storage device518with updated configuration data. Similarly, if the router104malfunctions or fails, the removable storage device518may be removed and inserted into a replacement router104without having to reconfigure the replacement router104.

In one example, the primary operating system510is configured to transfer the configuration data from the mounted removable storage device518at boot time. For example, the primary operating system510may use Trivial File Transfer Protocol (“TFTP”) or another suitable protocol to transfer the configuration data. Configuration data is necessary for the primary operating system510, and, in turn, for the router104to function. Without the configuration data, the router104will be inoperable. Accordingly, the removable storage device518serves as an ignition key wherein the router104will not boot up with the removable storage device518first being inserted. Similarly, the router104will shut down if the removable storage device518is removed during operation.

FIG. 6is a schematic diagram of an example computer for implementing the example server204ofFIG. 5. Computer600includes a processor602, memory604, a storage device606, and a communication port622, operably connected by an interface608via a bus610.

Processor602processes instructions, via memory604, for execution within computer600. In an example embodiment, multiple processors along with multiple memories may be used. In one example, the processor602includes a COM Express CPU module supporting Intel Core i7 Sandy Bridge and Ivy Bridge architectures. In one example, the processor602includes an Intel Core i7-2610UE processor.

Memory604may be volatile memory or non-volatile memory. Memory604may be a computer-readable medium, such as a magnetic disk or optical disk. Storage device606may be a computer-readable medium, such as floppy disk devices, a hard disk device, optical disk device, a tape device, a flash memory, phase change memory, or other similar solid state memory device, or an array of devices, including devices in a storage area network of other configurations. In one example, the storage device606includes dual solid state disk drives. A computer program product can be tangibly embodied in a computer-readable medium such as memory604or storage device606.