Logical Partition Security in the IBM ~ Pseries

Logical Partition Security in the IBM ~ Pseries

Logical Partition Security in the IBM ~ pSeries 690 First Edition (02/15/2002) Before using this information and the product it supports, read the information in "Notices" on page 9. (C) International Business Machines Corporation, 2002. All rights reserved. Note to U.S. Government Users Restricted Rights - Use, duplication, or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. ii LPAR Security in the IBM ~ pSeries 690 Contents Introduction .....................................................................1 LPAR Protection in Hardware ....................................................1 Real Mode Addressing .........................................................1 Virtual Mode Addressing .......................................................2 Access to I/O Address Space .....................................................3 DMA Addressing ..............................................................3 LPAR Protection in Firmware .....................................................3 LPAR and Operating Systems ..................................................4 Preventing Denial of Service ....................................................5 LPAR Management ...............................................................5 LPAR Testing and Validation .....................................................7 The IBM ^ LPAR Family ...................................................7 Summary ........................................................................7 Special Notices ..................................................................8 LPAR Security in the IBM ~ pSeries 690 iii iv LPAR Security in the IBM ~ pSeries 690 firmware component called a hypervisor. Introduction Together, these components build a tight architectural “box” around each partition, The introduction of logical partitioning confining partition operations to an exclusive technology to IBM ~ pSeriesTM systems set of processor, memory, and I/O resources has greatly expanded the options for deploying that have been assigned to that partition. The applications and workloads onto server figure on the top of page 2 illustrates a set of hardware. Logical partitioning (LPAR) is a address mapping mechanisms used by these server design feature that provides more resources to contain partition operations, as end-user flexibility by making it possible to run described in the following sections. multiple, independent operating system images concurrently on a single server. While such flexibility offers a number of desirable business Real Mode Addressing advantages, it can also raise some concerns Each operating system image requires a range about the security implications of running of memory that can be accessed in real operating system images in such close addressing mode. In this mode, no virtual proximity. Of course, security has been a address translation is performed, and addresses fundamental focus of pSeries LPAR design, as start at address 0. Operating systems typically it has in the LPAR designs of other use this address range for startup kernel code, IBM ~ products. The purpose of this fixed kernel structures, and interrupt vectors. white paper is to address these security Since multiple partitions can not be allowed to concerns by providing an overview of the share the same memory range at physical pertinent design aspects of LPAR technology address 0, each partition must have its own real on pSeries. mode addressing range. As this paper will illustrate, very strong When each partition is started, firmware assigns isolation of operating systems running in the that partition a unique real mode address offset logical partitions comes quite naturally, due to and range value, and then sets these offset and the basic mechanisms on which logical range values into registers in each processor in partitioning is founded. The programs and data the partition. These values map to a physical present in one logical partition are designed to memory address range that has been exclusively be safe from copying or modification, whether assigned to that partition. When partition intentional or accidental, by programs in other programs access instructions and data in real logical partitions. Even programming addressing mode, the hardware automatically exceptions have no effect outside of the adds the real mode offset value to each address partition in which they occur. To explain this before accessing physical memory. In this way, further, what follows is a brief description of each logical partition programming model the theory of operation – the “magic” – of the appears to have access to physical address 0, pSeries logical partitioning feature. even though addresses are being transparently redirected to another address range (see arrow 1 in the figure). Hardware logic prevents modification of these registers by operating LPAR Protection in Hardware system code running in the partitions. Any attempt to access a real address outside the There are actually only a few fairly simple assigned range results in an addressing LPAR mechanisms, implemented through exception interrupt, which is handled by the special hardware registers and a trusted LPAR Security in the IBM ~ pSeries 690 1 Hypervisor- Hypervisor- Controlled Controlled Physical TCE Tables Partition 1 Page Tables Memory For DMA Partition 1 Proc I/O Load/Store I/O Slot N 3 Proc I/O Slot N 2 Proc I/O Slot 4 Addresses Bus Bus Addresses Bus N Addresses Virtual Virtual Addresses Virtual 1 I/O Slot Partition 2 Real Addresses { Addr NN Proc I/O Load/Store 0 Proc 3 Partition 2 0 2 I/O Slot Proc 1 0 Addresses Virtual I/O Slot Virtual Addresses Virtual { Addr 0 4 Bus Addresses Bus Real Addresses Addresses Bus operating system exception handler in the has been moved out of physical memory onto partition. disk, the operating system receives a page fault. Page translation tables are not new; they ® Virtual Mode Addressing have been a part of AIX 5LTM and pSeries Operating systems use another type of server architecture for quite some time. addressing, virtual addressing, to give user However, page translation tables are managed applications an effective address space that differently in LPAR systems. exceeds the amount of physical memory In a non-LPAR operation, an operating system installed in the system. The operating system such as AIX 5L creates and maintains page does this by paging infrequently used programs table entries directly, using real mode and data from memory out to disk, and bringing addressing to access the tables. In a logical them back into physical memory on demand. partitioning operation, the page translation When applications access instructions and data tables are placed in reserved physical memory in virtual addressing mode, they are not aware regions that are only accessible to the that their addresses are being translated by hypervisor. In other words, a partition’s page virtual memory management using page table is located outside the partition's real mode translation tables. These tables reside in system address range. The register that provides a memory, and each partition has its own processor the physical address of its page table exclusive page table. Processors use these is also protected by hardware logic, so that it tables to transparently convert a program's cannot be modified by partition programs, and virtual address into the physical address where can only be modified by the hypervisor. that page has been mapped into physical When the operating system needs to create a memory (see arrow 2 in the figure). If the page page translation mapping, it must execute a 2 LPAR Security in the IBM ~ pSeries 690 specially architected hypervisor service call translation control entry (TCE) table, which is instruction on one of its processors, which also stored in physical memory. As with page transfers execution to a hypervisor program. tables, this TCE table resides in a physical The hypervisor program creates the page table address region of system memory that is entry on the partition's behalf and adds a logical inaccessible by partitions, and only accessible to physical offset to the table entry before by the hypervisor. Unlike page tables, however, storing it. Partition programs can also make TCE tables are not tied to any one partition. By hypervisor calls to modify or delete existing calling a hypervisor service, partition programs page table entries. Page table entries only map can create, modify, or delete TCE table entries into specific physical memory regions, called for the specific PCI adapters assigned to that logical address regions, which have been partition. The hypervisor adds a physical assigned in granular chunks to that partition. address offset to the DMA target address These logical address regions provide the provided by the partition program. When the physical memory that backs up the partition's I/O bridge translates an I/O adapter DMA virtual page address spaces. A partition’s address into physical memory, the resulting memory, therefore, is composed of one address falls within the physical memory space contiguous real mode addressing region, plus assigned to that partition (see arrow 4 in the some number of logical address regions, which figure). may be assigned in any order from anywhere in memory. LPAR Protection in Firmware Access to I/O Address Space In addition to mapping virtual page addresses The hypervisor program is a very specialized into the partition’s physical memory, the program, entrusted to carefully perform all the operating system can

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    13 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us