XS Server Hardware: Difference between revisions

From OLPC
Jump to navigation Jump to search
 
(52 intermediate revisions by 17 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.
====100baseT====


A fan-less aluminum disk drive cooler may be worthwhile as a prevention of overheating measure.
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.


===External Disk Drives===
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).


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


===Flash===
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].


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.
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 smaller amount (512KB) of NOR Flash will be provided for storage of configuration information and boot firmware.
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).


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.
===Other Interfaces===


==Power==
What other interfaces should the School server have ?


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
====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 106: 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 132: 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.