XS Server Hardware: Difference between revisions

From OLPC
Jump to navigation Jump to search
 
(49 intermediate revisions by 16 users not shown)
Line 1: Line 1:
{{translations}}
{{OLPC}}
{{OLPC}}
[[Category:SchoolServer]]


'''Note: If you are looking for a Hardware Recommendation for School Server, see [[XS_Recommended_Hardware]]. This page discusses a custom hardware platform created by OLPC for the School Server role.'''
This is a description of the first implementation of the [[School server]].
It describes the hardware and software implementation details, including the
management of services. The actual services provided by the [[School server]]
are described in the [[XS_Server_Services|Server Services]] document, with an
accompanying [[XS_Server_Discussion|discussion of desired services]].


=Introduction=
=Hardware Specifications=


(As of mid-2008, the plans discussed here are on hold.)
The School server hardware platform has not been selected at this time.


In the medium-term we expect to provide a number of [[School server]] hardware platforms. OLPC, in order to support the deployment of laptops, especially in environmentally hostile or off-the-grid locations, is designing a reference platform in collaboration with our manufacturing partner, Quanta.
The current plan is to provide two hardware platforms. One, XSX, available by mid-March,
will allow for School server software testing and early deployments in areas where
power mains are at least periodic if not continuous. The second platform, XS, would be
reduced in cost and power, and should be available for deployment beginning in
October.


Planned platforms include:
* [[XSX Server Implementation|XSX]] - A medium-term prototype, using OTS parts
* An XO laptop - Equipped with an external disk drive, a laptop should be capable of performing as a school server for small (less than thirty laptop) schools.
* XS - An environmentally rugged, very low power school server for up to 150 students. Should be available in November.


==XS Specifications==
=XS Specifications=


This is a [[School server]] hardware platform designed with low power consumption and operation in environmentally challenging conditions as goals.
This is the hardware platform for actual deployment.


==Processor==
The school server must meet all of the environmental constraints of the XO laptop
with the exception of daily rough handling!


This hardware platform may be based on any processor architecture supported by the mainstream Linux kernel and libc software trees. We encourage the use of processors supported by Fedora Core 7.
===Processor Architecture===


Processor performance is difficult to characterize with a single number. We are looking for between 1200 and 1600 MIPs, capable of 120K+ interrupts/sec, with at least 1 GB/sec of memory throughput. At least 256KB of L2 cache should be provided.
This hardware platform may or may not be based on an x86 platform. Perhaps multiple hardware platforms will be supported.


For the XS Server, the processor is a PowerPC, the MPC7447A from Freescale, with AltiVec support. Apple calls it a G4.
====Reasons to use x86====


==Network Interfaces==
*Support required for only a single toolchain
The following are the integrated networking interfaces on XS. Additional interfaces may be added to the system using the [[#Peripheral_Interfaces|peripheral interfaces]].
*Able to use an XO as an emergency school server replacement ?


==Peripheral Interfaces==
====Reasons to use non-x86====
The following peripheral interfaces are provided for expanding the capabilities of the school server.


===USB 2.0===
*Lower power
At least six [http://en.wikipedia.org/wiki/USB Universal Serial Bus] (USB) 2.0 interfaces should be provided for extending the storage and communication capabilities of a [[School server]].
*Lower cost
*Usually integrated with more onchip peripherals.


This assumes that up to three external ports will be used for [[Active Antenna]], another for an external CD/DVD RW, another for a possible WAN connection, and one last one for temporary USB key or external USB drive attachment.
===Network Interfaces===


The total amount of power consumed by the USB devices will be clamped to 2.5 A at 5 Volts (12.5 W) total, aggregrated across all devices. Any single device may pull up to 1.5 A (7.5 W).
What network interfaces should be provided on the School server ?


====802.11b/g====
===PCI-Express Slot===
A short, full height PCI-Express (4 channel) expansion slot is provided internally in the XS. This slot is intended for the addition of a DVB-S receiver and demodulator, but may be used for other purposes as well.


The power consumption of this expansion slot limited to 15 W. Exceeding this will lower the maximum ambient operating temperature of the server, and may also prevent the use of a second disk drive.
How many [http://en.wikipedia.org/wiki/Wi-Fi WiFi] interfaces should be built into the server ? The current proposal is to include two distinct channels (MACs).


==Non-Volatile Storage==
If we really have 100 students in close proximity, can we make do with only two channels ?
''to consider : how many drives are recommended for backups and replacement? with only 1 drive, what is the path to recovering a dead/dying drive? this may depend on quality of connection between server and upstream backup at a regional center''


===Internal Disk Drive===
The number of WiFi interfaces will be expanded using external USB connected WiFi nodes. A reasonable number of these (two to four) can be added to a server to increase the WiFi performance. (* remember that if you do not use highly directional antennas - such as the sector antennas mobile phone towers use - it is highly unlikely that you will be able to use more than three b/g interfaces in a server, due to interference between channels. I would not count on being able to use more than three, each in one of the non-interfering channels 1, 6 and 11. There is a paper in the Mesh Networking Group at Microsoft Research that states they were unable to use more than one PCI - not USB - IEEE802.11g card in a machine, even in different channels. To use two, they had one g and the other a*)
One internal 3.5 in. disk drive will be provided. The disk interface will be SATA (version 1 or 2). The capacity of this disk drive WILL vary, with a minimum size of 300 GB at this time.


A second 3.5 in. disk drive will be supported in the XS, primarily for onsite drive replacement, but also allowing storage expansion. Use of a second disk drive will significantly increase the power consumption of the server.
====USB or ethernet?====


A fan-less aluminum disk drive cooler may be worthwhile as a prevention of overheating measure.
Before large scale deployment consider using ethernet (with Power Over Ethernet) to external WiFi nodes instead of shorter max length USB. Although it may well be feasible to separate the 3 antennae sufficiently with USB cables so that transmission on one channel does not flood the physically adjacent receivers on separate channels, it is likely the same deployment will eventually want to re-use the 3 external nodes with longer cables to properly mounted sectoral antennae when available.


===External Disk Drives===
1) Initially use the external nodes with short ethernet cables same as would use with USB cables (ie separate channels 1, 6 and 11). The 3 nodes will be an ugly clutter near the server with either type of cable but should work much the same with either and cost the same. However this is inefficient as two thirds of traffic between neighboring XOs would have to pass through the server since there would only be a 1 in 3 chance of both XOs in any given pair being on the same channel. You are only getting the extra bandwidth on traffic between server and XOs, not between XOs. Could also be more complicated to optimize link distances and mesh diameter when XOs are at home for 3 separate networks than for one, and traffic could be concentrated in one or two of the channels rather than spread evenly across all 3.


Additional disks may be added using the external USB 2.0 ports.
2) Later, when the 802.11s MAC is fully implemented, can add implementation of the "Common Channel Framework" (CCF) extension which uses RTX/CTX exchanges on a common channel to dynamically specify which of the 3 channels will be used for any particular set of transmissions. That should be much more efficient as neighboring XOs can communicate directly. See [http://www.ieee802.org/802_tutorials/nov06/802.11s_Tutorial_r5.pdf 802.11s Tutorial] (from slide 67). Although it may seem counter-intuitive, in practice use of just one WiFi radio switching between 3 channels is likely to give more bandwidth overall than 3 separate radios splitting up the user population within same coverage area. Will also be more resilient when eventually there is interference from other WiFi users.


===Flash===
3) Then, the sectorized antennae can be used to actually obtain more bandwidth from having 3 separate radios with 3 separate (though overlapping) coverage areas (with all 3 channels used in each).


A fair amount (512 MB) of NAND Flash (solid state non-volatile) memory will be provided on the XS server to allow the operating system and minimal services to continue operation even though the primary disk drive has failed.
4) At the same time the sectorized antennae would significantly extend range of the first hop. That could make a real difference to mesh coverage when students are not at school.


A smaller amount (512KB) of NOR Flash will be provided for storage of configuration information and boot firmware.
5) Mounting 3 nodes with sectorized antennas properly could be quite inconvenient with USB cables, not just an untidy clutter. By using ethernet from the start it would only be necessary to switch to longer cables rather than having to replace the external nodes when antenna designs have been worked out and tested and CCF MAC layer extension implemented.


On OTS systems Flash storage is currently not needed - or used. If you can obtain flash disks for all your OTS XS machines, do discuss it in the mailing list - it is an extremely valuable addition.we are considering using adding USB keys or SD cards to allow similar functionality.
6) Even simply physically mounting the 3 nodes outside the school, a hundred metres or so apart, without fancy antennae could improve mesh coverage. There are very good reasons why industrial Access Point deployments use ethernet cables with power over ethernet rather than tethering the APs to the hub with short USB cables.


==Power==
7) Also there is always a likelihood of [http://tier.cs.berkeley.edu/wiki/Wireless WiLDnet] (WiFi Long Distance) links being added with 802.11a channels to adjacent schools for internet connectivity. These use large parabolic dishes that would definately require longer cables (as would a satellite dish). So ethernet connectors with power over ethernet should part of the spec. Its a lot cheaper to include in the first place than to add later.


The power specifications of the [[School server]] are important. Many schools do not have adequate, or regular, power. While the power consumption should be minimized (30W is a good
====100baseT====

A [http://en.wikipedia.org/wiki/100baseT wired ethernet] interface provides for reliable, high-bandwidth connection between a [[school server]] and its internet connection (if through a [http://en.wikipedia.org/wiki/DSL DSL] or [http://en.wikipedia.org/wiki/Satellite_modem satellite modem]) or other school servers.

The current plan is to provide at least two [http://en.wikipedia.org/wiki/100baseT 100baseT] ports on the server (unless [http://en.wikipedia.org/wiki/HomePlug_Powerline_Alliance Powerline] is substituted for one port).

====Powerline====

This technology has the potential to provide [http://en.wikipedia.org/wiki/100baseT 100baseT] performance over the power lines used to power the school servers. While known as power line communications, the high speed short distance version being referred to here is best represented by the [http://en.wikipedia.org/wiki/HomePlug_Powerline_Alliance HomePlug Powerline Alliance].

The advantage is that even if power lines aren't currently deployed in the school, the cable required for powerline networking is more likely to be available/cheaper than Cat-3 or Cat-5 cable.

A drawback is the lack of standardization and regulatory concerns in many nations. Correcting the regulatory situation isn't necessarily just a matter of time. Powerline networking emits strongly in the lower HF band, increasing the noise floor for existing communication systems (not WiFi, WiMax, or cellular).

===Other Interfaces===

What other interfaces should the School server have ?

====USB 2.0====

A number of [http://en.wikipedia.org/wiki/USB Universal Serial Bus] (USB) 2.0 interfaces will be provided for extending the storage and communication capabilities of a [[School server]].

Perhaps four ports, on two separate buses ? This assumes that up to two external ports will
regularly be used to add additional WiFi channels (or the WAN connection), and two others will be available for external disk drives.

If no internal WiFi modules are included in the School server, then the number of USB ports should be increased by two.

===Non-Volatile Storage===

====Internal Disk Drive====

An internal disk drive will be provided. This may be either PATA or SATA. The size of this disk drive WILL vary, but a minimum size of 300 GB seems reasonable given a target of 100 students per server.

If the humidity environmental constraints require excessive encapsulation of internal drives, perhaps a single modular and "stackable" approach is optimum.

Otherwise, including the "first" drive internally reduces cost (less plastic enclosure).

====External Disk Drives====

Additional disks may be added using external USB 2.0 ports.

====Flash====

Enough flash (solid state non-volatile) memory should be provided on the server to allow the operating system and minimal services to continue operation even though the primary disk drive has failed. Current estimates are that 256 MB of memory will be sufficient for this task.

===Power===

The power specifications of the [[School server]] are important. Many schools do not have adequate, or regular, power. While the power consumption should be minimized (15W is a good
target), consideration should be given to an integral (or optional modular) uninterruptible power supply (UPS). This is nothing more than a larger version of the laptop power supply!
target), consideration should be given to an integral (or optional modular) uninterruptible power supply (UPS). This is nothing more than a larger version of the laptop power supply!


Line 124: Line 77:
Possible methods of obtaining power are summarized in [[Battery_and_power]].
Possible methods of obtaining power are summarized in [[Battery_and_power]].


===Environmental===
==Environmental==


===Temperature===
The environmental constraints on the [[school server]] are similar but slightly less constrained than those of the laptop, at least in terms of water and dirt penetration and drop resistance.

====Temperature====
The [[school server]] should meet the same environmental specifications for temperature as the laptop. This is 50 C ambient.
The [[school server]] should meet the same environmental specifications for temperature as the laptop. This is 50 C ambient.


====Water and Dust====
===Water, Dust, and Salt Fog===


The server should be resistant to water spray from all directions, but does not have to survive immersion. It should be capable of long-term operation in a constantly humid (100%) environment, with salt fog and dust.
This is one area where the [[school server]] doesn't have to meet the standards of the laptop. The server should be resistant to water exposure from a single direction (above), but does
not have to survive immersion. It should be capable of operation in a constantly humid (100%) environment.


While the server will contain fans, they will externally accessible for easy replacement and under software control to conserve power.
:Can any hard drive operate at 100% humidity ? If the storage device needs to be encapsulated to meet humidity specs., it might as well be designed as separate, easy to replace modules (USB disk units.)


Connectors and buttons should be resistant to water and dust intrusion. Buttons should be sealed against water, and connectors located and cables dressed to prevent water intrusion.
Dust intrusion should be considered. While the server will not contain a fan, it will be air cooled and dust collection on the cooling surfaces will be a problem. User cleanable filtration should be provided on the air intakes and vents.


===Mounting===
Connectors and buttons should be resistant to dust intrusion. Buttons should be sealed against water, and connectors located and cables dressed to prevent water intrusion.

====Mounting====


While the school server should be designed to sit on a flat surface, it should probably
While the school server should be designed to sit on a flat surface, it should probably
Line 150: Line 98:
This shouldn't cause a problem unless the server includes batteries for a optional/modular UPS...
This shouldn't cause a problem unless the server includes batteries for a optional/modular UPS...


====Drop and Shake====
===Drop and Shake===

The [[school server]] should meet the drop and shake specifications of standard consumer
desktop PCs.

:Perhaps the shake specification should be higher to account for rougher transport during deployment ?

==XSX Specifications==

This is a version with a target date of mid-March. The primary goal is to support development of the School server/laptop software, including early trials. As this is a very limited production model (12-40 ?) and the design criteria are still undefined, flexibility wins out over cost. Off-the-shelf consumer PC hardware is being used for this platform. See the [[XSX Server Implementation]] for details.

Selection criteria are:
* 1GHz+ x86 processor
* 1 GB main memory
* four to six USB interfaces, with power for three Marvell Wifi nodes and an external disk drive.
* one 300GB+ 3.5in SATA drive
* power and space for a second disk drive
* two 100baseT network interfaces
* minimal fans

There are no power consumption targets for this device. A separate UPS is suggested for trial deployments in areas of uncertain power.

=Software Specifications=

The [[School server]] should run roughly the same Linux OS as that in the XO laptop.
The release process will probably be different, but the kernel and most libraries should be
identical.

A [[Trial1_Server_Software|description of the software used for the school server in early trials]] is available.

==Development Toolchain==

What is the cost of this toolchain being different from that used for the XO laptop?

==Upgrades==

How is the [[School server]] upgraded ?

==Service Management==

How are services on the School server installed, configured, managed, and updated ?

A web based interface is a natural candidate for performing these actions on the [[School server]].


==Scalability==

A [[School server]] should serve up to a hundred students. We could choose any number as this target, but have selected one hundred for a number of reasons:

#Higher student/server ratios push the processor requirements into the desktop PC range, with their higher prices/power consumption, and require multiple disks to provide the needed storage.
#Higher student/server ratios will probably require dedicated access points in addition to those provided locally by the server.
#Smaller student/server ratios spend too much money on the case and power supply for each unit.
#Ideally, the number of students supported by a single server results in at least two servers in almost all schools, providing a degree of redundancy.

In schools with multiple school servers (the normal situation), the servers are interconnected (preferrably using a wired network connection). They will work together to maximize the performance and reliability of the system.

The management interface for a school will be independent of the number of servers needed to serve the school.


The [[school server]] should meet higher drop and shake specifications than standard consumer
The monitoring and management interface for school server software in a country/region should be independent of the number of server managed.
desktop PCs, to account for rough transport in the delivery.

Latest revision as of 15:41, 12 December 2009

  Please copy/paste "{{Translationlist | xx | origlang=en | translated={{{translated}}}}}" (where xx is ISO 639 language code for your translation) to XS Server Hardware/translations HowTo [ID# 227425]  +/-  


  This page is monitored by the OLPC team.

Note: If you are looking for a Hardware Recommendation for School Server, see XS_Recommended_Hardware. This page discusses a custom hardware platform created by OLPC for the School Server role.

Introduction

(As of mid-2008, the plans discussed here are on hold.)

In the medium-term we expect to provide a number of School server hardware platforms. OLPC, in order to support the deployment of laptops, especially in environmentally hostile or off-the-grid locations, is designing a reference platform in collaboration with our manufacturing partner, Quanta.

Planned platforms include:

  • XSX - A medium-term prototype, using OTS parts
  • An XO laptop - Equipped with an external disk drive, a laptop should be capable of performing as a school server for small (less than thirty laptop) schools.
  • XS - An environmentally rugged, very low power school server for up to 150 students. Should be available in November.

XS Specifications

This is a School server hardware platform designed with low power consumption and operation in environmentally challenging conditions as goals.

Processor

This hardware platform may be based on any processor architecture supported by the mainstream Linux kernel and libc software trees. We encourage the use of processors supported by Fedora Core 7.

Processor performance is difficult to characterize with a single number. We are looking for between 1200 and 1600 MIPs, capable of 120K+ interrupts/sec, with at least 1 GB/sec of memory throughput. At least 256KB of L2 cache should be provided.

For the XS Server, the processor is a PowerPC, the MPC7447A from Freescale, with AltiVec support. Apple calls it a G4.

Network Interfaces

The following are the integrated networking interfaces on XS. Additional interfaces may be added to the system using the peripheral interfaces.

Peripheral Interfaces

The following peripheral interfaces are provided for expanding the capabilities of the school server.

USB 2.0

At least six Universal Serial Bus (USB) 2.0 interfaces should be provided for extending the storage and communication capabilities of a School server.

This assumes that up to three external ports will be used for Active Antenna, another for an external CD/DVD RW, another for a possible WAN connection, and one last one for temporary USB key or external USB drive attachment.

The total amount of power consumed by the USB devices will be clamped to 2.5 A at 5 Volts (12.5 W) total, aggregrated across all devices. Any single device may pull up to 1.5 A (7.5 W).

PCI-Express Slot

A short, full height PCI-Express (4 channel) expansion slot is provided internally in the XS. This slot is intended for the addition of a DVB-S receiver and demodulator, but may be used for other purposes as well.

The power consumption of this expansion slot limited to 15 W. Exceeding this will lower the maximum ambient operating temperature of the server, and may also prevent the use of a second disk drive.

Non-Volatile Storage

to consider : how many drives are recommended for backups and replacement? with only 1 drive, what is the path to recovering a dead/dying drive? this may depend on quality of connection between server and upstream backup at a regional center

Internal Disk Drive

One internal 3.5 in. disk drive will be provided. The disk interface will be SATA (version 1 or 2). The capacity of this disk drive WILL vary, with a minimum size of 300 GB at this time.

A second 3.5 in. disk drive will be supported in the XS, primarily for onsite drive replacement, but also allowing storage expansion. Use of a second disk drive will significantly increase the power consumption of the server.

A fan-less aluminum disk drive cooler may be worthwhile as a prevention of overheating measure.

External Disk Drives

Additional disks may be added using the external USB 2.0 ports.

Flash

A fair amount (512 MB) of NAND Flash (solid state non-volatile) memory will be provided on the XS server to allow the operating system and minimal services to continue operation even though the primary disk drive has failed.

A smaller amount (512KB) of NOR Flash will be provided for storage of configuration information and boot firmware.

On OTS systems Flash storage is currently not needed - or used. If you can obtain flash disks for all your OTS XS machines, do discuss it in the mailing list - it is an extremely valuable addition.we are considering using adding USB keys or SD cards to allow similar functionality.

Power

The power specifications of the School server are important. Many schools do not have adequate, or regular, power. While the power consumption should be minimized (30W is a good target), consideration should be given to an integral (or optional modular) uninterruptible power supply (UPS). This is nothing more than a larger version of the laptop power supply!

In some test schools with minimal power, we are already deploying multiple (gang) battery chargers with integral UPS.

Possible methods of obtaining power are summarized in Battery_and_power.

Environmental

Temperature

The school server should meet the same environmental specifications for temperature as the laptop. This is 50 C ambient.

Water, Dust, and Salt Fog

The server should be resistant to water spray from all directions, but does not have to survive immersion. It should be capable of long-term operation in a constantly humid (100%) environment, with salt fog and dust.

While the server will contain fans, they will externally accessible for easy replacement and under software control to conserve power.

Connectors and buttons should be resistant to water and dust intrusion. Buttons should be sealed against water, and connectors located and cables dressed to prevent water intrusion.

Mounting

While the school server should be designed to sit on a flat surface, it should probably also be mountable (hangable) from a wall or post.

This shouldn't cause a problem unless the server includes batteries for a optional/modular UPS...

Drop and Shake

The school server should meet higher drop and shake specifications than standard consumer desktop PCs, to account for rough transport in the delivery.