Professional Documents
Culture Documents
Version: 5.0
Contents
1 BlackBerry Enterprise Server for Microsoft Exchange........................................................................................................... Overview: BlackBerry Enterprise Server benchmarking............................................................................................................. Testing conditions........................................................................................................................................................................... Environment............................................................................................................................................................................ Test details.............................................................................................................................................................................. User scaling test results................................................................................................................................................................. Results: BlackBerry Enterprise Server.................................................................................................................................. Results: Computer that hosts the BlackBerry Administration Service............................................................................. Results: Database server....................................................................................................................................................... Results: Microsoft Exchange messaging server.................................................................................................................. Server impact test results............................................................................................................................................................... Results: BlackBerry Enterprise Server.................................................................................................................................. Results: Computer that hosts the BlackBerry Administration Service............................................................................. Results: Database server....................................................................................................................................................... Results: Microsoft Exchange messaging server.................................................................................................................. Using the impact results for the messaging server in your organization's environment....................................................... Using the Microsoft Exchange 2007 Mailbox Server Role Storage Requirements Calculator..................................... Calculating the disk throughput data for Microsoft Exchange......................................................................................... Calculating the processor time data for the messaging server........................................................................................ Conclusions...................................................................................................................................................................................... Workload details.............................................................................................................................................................................. Storage infrastructure that was used for performance testing................................................................................................. Monitoring server performance..................................................................................................................................................... 5 5 5 5 8 10 10 13 13 16 18 18 20 21 21 24 24 25 26 26 27 32 32 35 35 35 36 38 40 42 44 47 54
2 Administrator controlled workloads on the BlackBerry Enterprise Server......................................................................... Overview: Administrator controlled workloads on the BlackBerry Enterprise Server............................................................ Testing conditions........................................................................................................................................................................... Environment............................................................................................................................................................................ Test details.............................................................................................................................................................................. Results: Sending IT policy updates to BlackBerry devices......................................................................................................... Performance graphs............................................................................................................................................................... Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices.......................................... Performance graphs............................................................................................................................................................... Results: Updating user directory list information in the BlackBerry Configuration Database..............................................
Performance graphs............................................................................................................................................................... 3 Comparing BlackBerry Enterprise Server version 5.0 with BlackBerry Enterprise Server version 4.1 SP6 MR5.......... Overview: Comparing BlackBerry Enterprise Server version 5.0 with BlackBerry Enterprise Server version 4.1 SP6 MR5 ........................................................................................................................................................................................................... Testing conditions........................................................................................................................................................................... Environment............................................................................................................................................................................ Test details.............................................................................................................................................................................. Testing results................................................................................................................................................................................. Results: BlackBerry Enterprise Server.................................................................................................................................. Results: Computer that hosts the BlackBerry Administration Service............................................................................. Results: Database server....................................................................................................................................................... Results: Microsoft Exchange messaging server.................................................................................................................. Conclusions...................................................................................................................................................................................... Workload details.............................................................................................................................................................................. Storage infrastructure that was used for performance testing................................................................................................. BlackBerry Enterprise Server processes....................................................................................................................................... 4 High availability performance considerations........................................................................................................................ Overview: High availability performance considerations.......................................................................................................... Testing conditions........................................................................................................................................................................... Environment............................................................................................................................................................................ Test details.............................................................................................................................................................................. Load test results.............................................................................................................................................................................. Results: Primary BlackBerry Enterprise Server................................................................................................................... Results: Standby BlackBerry Enterprise Server................................................................................................................... Results: Computer that hosts the BlackBerry Administration Service............................................................................. Results: Computer that hosts the BlackBerry Monitoring Service................................................................................... Results: Database Server....................................................................................................................................................... Results: Microsoft Exchange messaging server.................................................................................................................. Failover test results......................................................................................................................................................................... Results: Message delivery..................................................................................................................................................... Results: BlackBerry Enterprise Server instances................................................................................................................ Results: Database Server....................................................................................................................................................... Results: Microsoft Exchange messaging servers................................................................................................................ Conclusions......................................................................................................................................................................................
54 57 57 57 57 60 61 61 64 64 66 68 69 73 74 77 77 77 77 80 82 82 82 83 83 83 84 84 85 89 92 93 94
Workload details.............................................................................................................................................................................. 96 Storage infrastructure that was used for performance testing................................................................................................. 100 5 BlackBerry Enterprise Server performance on VMware ESX 3.5 and VMware vSphere 4.0............................................ Overview: Performance on virtual machines............................................................................................................................... Testing conditions........................................................................................................................................................................... Environment............................................................................................................................................................................ Test details.............................................................................................................................................................................. Test results and analysis................................................................................................................................................................ Discussion of performance results....................................................................................................................................... Conclusions...................................................................................................................................................................................... 6 Performance implications for the BlackBerry Mail Store Service........................................................................................ How the performance of the database server impacts the BlackBerry Mail Store Service.................................................... How the performance of the messaging server impacts the BlackBerry Mail Store Service................................................. Configure the throttling for the BlackBerry Mail Store Service................................................................................................ 7 Database introduction................................................................................................................................................................ Overview: Upgrading the BlackBerry Configuration Database................................................................................................ Database contents.......................................................................................................................................................................... Objects that are located in the BlackBerry Configuration Database............................................................................... Database tables removed from the BlackBerry Configuration Database........................................................................ Database tables added to the BlackBerry Configuration Database................................................................................. Database tables with a high database footprint................................................................................................................ Time and memory requirements for upgrading the BlackBerry Configuration Database..................................................... Processes that impact the BlackBerry Configuration Database............................................................................................... Adding user accounts to the BlackBerry Configuration Database................................................................................... Reconciling IT policies and software configurations.......................................................................................................... BlackBerry Policy Service....................................................................................................................................................... Publishing applications.................................................................................................................................................................. Processes in the BlackBerry Configuration Database that the BlackBerry Administration Service controls...................... 102 102 102 102 104 104 104 107 108 108 108 108 110 110 110 110 111 111 113 113 114 114 115 116 118 118
8 Database maintenance............................................................................................................................................................... 120 Planning Microsoft SQL Server database maintenance for the BlackBerry Enterprise Server.............................................. 120 Determining a maintenance schedule................................................................................................................................. 120 Determining fragmentation.................................................................................................................................................. 120
Defragmenting and reindexing Microsoft SQL Server databases.................................................................................... Managing transaction log growth................................................................................................................................................ Best practices: Performing database maintenance....................................................................................................................
Research In Motion performed two sets of benchmark tests to determine the performance characteristics of BlackBerry Enterprise Server version 5.0 for Microsoft Exchange. User scaling tests were performed to determine how the number of BlackBerry device users in an organization's environment affects how the BlackBerry Enterprise Server uses system resources. Server impact tests were performed to determine how the BlackBerry Enterprise Server affects the resource usage of the various servers in an organization's environment. The testing environment for the BlackBerry Enterprise Server included 2000 users who each have an email account on the Microsoft Exchange server. Each user's email account was prepopulated with approximately 100 MB of email messages, tasks, and address book entries. Each performance test was conducted for four hours. The data compiled in the final two hours of the performance testing was used for the performance benchmarking analysis. The tests were run multiple times to verify that the results were repeatable and accurate. Performance counters were monitored to verify that hardware bottlenecks were not present during testing. The results of the performance tests and the conclusions that are based on the results are guidelines only. The results are based on the workloads used in these performance tests and might vary depending on your organization's environment and the usage patterns of BlackBerry device users. You should not apply simple multipliers to the messaging server resources based on the results because applications on the messaging servers, such as antivirus software, backup processes, auditing software, and archiving software, might affect the load statistics.
Related topics Monitoring server performance, 32
Testing conditions
Environment
BlackBerry Enterprise Server
Type Hardware Components One HP ProLiant BL460c G1 server with the following features: Software Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter Windows Server 2003 Standard x64 SP2
Testing conditions
Type
Components BlackBerry Enterprise Server version 5.0 for Microsoft Exchange ; all components installed on the computer except the BlackBerry Administration Service
Database server
Type Hardware Components One HP ProLiant BL460c G1 server with the following features: Software Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200 controller with 64 MB read cache with two 72 GB drives in a RAID1 configuration QLogic QLA 2400 series dual port Fibre Channel HBA Windows Server 2003 Standard x64 SP2 HP MPIO driver version 3.01 Microsoft SQL Server 2005 (Standard Edition x64) SP2
Testing conditions
Type Hardware
Components One HP ProLiant BL460c G1 server with the following features: 2 Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (8 cores total) 10 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200 controller with 64 MB read cache with two 72 GB drives in a RAID1 configuration QLogic QLA 2400 series dual port Fibre Channel HBA 3 TB on an EVA Disk Array for messaging server data storage Windows Server 2003 Standard x64 SP2 Microsoft Exchange 2007 SP1
Software
Load generators
Type Hardware Components Two VMware ESX 3.x-based virtual machines with the following features: Software virtual E5440 Processor core at 2.83 Ghz 512 MB memory virtual NIC 20 GB virtual local disk space Windows Server 2003 Standard SP2
Testing tools BlackBerry Performance Engineering Resource Kit version 2.0: a tool developed by Research In Motion that simulates the BlackBerry device network and permits testing without requiring the BlackBerry Infrastructure or a population of BlackBerry devices. Microsoft Exchange Load Generator version 8.0.1 (custom configuration): a tool that Microsoft developed that generates client-simulated loads for the Microsoft Exchange messaging server. The tool uses XML scripts that specify user tasks and rates for email, calendar, task, and contact list actions, and send and respond to meeting requests. BlackBerry MDS Connection Service push load test tool: an internal tool that RIM developed that simulates applications pushing web content to BlackBerry devices.
Testing conditions
Type
Components Organizer data load driver: an internal tool developed by RIM that simulates the activity of users creating, changing, and deleting organizer items such as notes, tasks, and contacts.
Test details
User scaling tests
The user scaling tests measured the resource usage of the servers in relation to the number of users with activated BlackBerry devices that are associated with the servers. The tests used the same workload for each user. The tests were run with 500 users, 1000 users, and 2000 users. The users read, replied to, and forwarded email messages. Users also retrieved additional information (for example, web content) on their BlackBerry devices. Test ID S1 S2 S3 Number of users 500 1000 2000 Number of users receiving message load 500 1000 2000
Testing conditions
Test ID
Test mode
Description users did not create email messages on their BlackBerry devices, users did not retrieve any additional information (for example, attachments) on their BlackBerry devices same messaging server loads that were used in the previous testing mode; the message rate through the messaging server was similar to or higher than the message rate that occured in the previous testing mode simulated the typical impact that a BlackBerry device user might have with the defined workload all of the BlackBerry Enterprise Server components running all users have activated BlackBerry devices users received email messages and other data (for example, web pages) users sent, read, replied to, and forwarded email messages, created and processed calendar entries, created and processed organizer data, and retrieved additional information (for example, attachments) on their BlackBerry devices users shifted approximately 25% of their tasks from the email applications on their computers to their BlackBerry devices; the load tools for the messaging server were adjusted proportionately to keep the message rate through the messaging servers similar to or higher than the message rate for the previous testing mode
C3
Active users
Workload description
The workload that was used for the performance tests represented a broad scope of the BlackBerry Enterprise Server version 5.0 functionality. The workload consisted of the following activities: managing email messages: marking email messages as read or unread, marking email messages for follow-up, and filing, deleting, and forwarding email messages; supporting rich-content and text email messages managing meeting invitations: creating (with and without document attachments), delivering, forwarding, and replying to meeting invitations managing calendar appointments managing personal contact lists and distribution lists
managing tasks
The following workload activities were performed on the BlackBerry devices: searching for remote email messages searching the contact list retrieving additional text for lengthy email messages retrieving and viewing images and other supported attachments receiving push content creating and sending email messages and meeting requests viewing calendar availability for meeting participants
The BlackBerry Monitoring Service was not configured for active tasks throughout the tests and its performance was not affected when the number of users increased. The resource usage of the BlackBerry Monitoring Service was extracted using the data for the BlackBerry Enterprise Server that is listed here. In most environments, the BlackBerry Monitoring Service should not be installed on the same computer that hosts the BlackBerry Enterprise Server because this might result in an increased use of system resources. Memory scaling data for the BlackBerry Monitoring Service S1 Number of users 500 S2 1000 S3 2000
10
S2 225
S3 225
Performance graphs
BlackBerry Enterprise Server scaling % Processor Time
11
12
13
Scaling data for the database server S1 Number of users % Processor Time Committed Bytes (MB) Total Disk Throughput (IOPS) Network Throughput (Mbps) Transactions per second Number of user connections 500 0.2 904 9 0.40 7 44 S2 1000 0.3 903 20 0.33 18 49 S3 2000 0.4 909 24 0.35 22 53
Performance graphs
Database server scaling % Processor Time
14
15
Performance graphs
Messaging server scaling % Processor Time
16
17
Total Disk Throughput (IOPS) Network Throughput (Mbps) Messages received per minute Messages sent per minute
The BlackBerry Monitoring Service was not configured for active tasks throughout the tests. The resource usage of the BlackBerry Monitoring Service was extracted using the BlackBerry Enterprise Server data above. In most environments, the BlackBerry Monitoring Service should not be installed on the computer that hosts the BlackBerry Enterprise Server because this might result in an increased use of system resources. Memory impact data for the BlackBerry Monitoring Service C1 Mode Number of users No BlackBerry Enterprise Server N/A C2 Passive users 2000 C3 Active users 2000
18
C2 225
C3 225
Performance graphs
BlackBerry Enterprise Server impact % Processor Time
19
20
2000 15.2
2000 16.4
2.20
2.38
21
C1 % Processor Time Per User (8 cores, 2830 MHz) Committed Bytes (MB) Total Disk Throughput (IOPS) OS Disk Throughput (IOPS) Mail Server Transaction Log Disk Throughput (IOPS) Mail Server Database Disk Throughput (IOPS) IOPS Per User (Database) Mail Server Database Disk Reads per Second Mail Server Database Disk Writes per Second Mail Server Database Disk Latency (sec/IO) Network Throughput (Mbps) Messages delivered per second Messages sent per second 0.000345 10 867 525 39 167 310 0.155 53 257 0.005 4.40 10.9 5.57
C2 0.00076 10 906 996 38 316 627 0.313 148 479 0.003 10.16 10.0 5.10
C3 0.0082 10 668 1048 35 331 670 0.335 168 501 0.004 11.45 10.5 5.75
Ratio C2/C1 2.20 1.90 1.89 2.02 2.02 2.79 1.86 2.31
Ratio C3/C1 2.38 2.00 1.98 2.16 2.16 3.17 1.95 2.60
Performance graphs
Messaging server impact % Processor Time
22
23
Using the impact results for the messaging server in your organization's environment
Using the impact results for the messaging server in your organization's environment
The results indicate that the disk I/O requirements for the messaging server database increased by a factor of 2.16 for each BlackBerry device user. The processor time (resource) requirements increased by a factor of 2.38 for each device user. These results apply to user accounts that were using both Microsoft Outlook and BlackBerry devices. The requirements are lower for fully mobile users that use BlackBerry devices only. To estimate accurate resource requirements for your organization's BlackBerry Enterprise Server environment, consider the following factors: BlackBerry Enterprise Server processes do not impact the performance of the messaging server for user accounts that you did not add to and activate on a BlackBerry Enterprise Server. In the performance tests, all of the messaging server users were device users, but the number of device users in your organization's environment might be lower than the number of messaging server users. As a result, the impact on the messaging server is proportionately lower. Your organization's environment might have excess capacity that might be sufficient to handle the resource usage of device users. For example, if your organization's environment has very large databases, the storage infrastructure might be designed for large storage capacity and might have excess disk throughout (I/O) capacity. BlackBerry Enterprise Server processes impact the baseline load of the messaging server only. Do not include additional loads caused by other systems and processes such as anti-virus software, anti-spam software, remote access methods such as IMAP or POP, or other mobile device systems in the baseline for these calculations. You can use the Microsoft Exchange 2007 Mailbox Server Role Storage Requirements Calculator to calculate some of the results for you, or you can perform specific calculations to customize the results for your organization's environment. This section demonstrates how you can use the data that is available to you to perform the calculations.
Using the Microsoft Exchange 2007 Mailbox Server Role Storage Requirements Calculator
You can use the Microsoft Exchange Server 2007 Mailbox Server Role Storage Requirements Calculator (storage calculator) version 17.3 or later to determine the storage requirements (I/O performance and capacity) for your organization's environment and an optimal logical unit number (LUN) layout based on a set of input factors. There are many input factors that you need to account for before you can design an optimal storage solution for Microsoft Exchange 2007. Visit code.msdn.microsoft.com/e2007calc to download the latest version of the storage calculator. You must use version 17.3 or later. Earlier versions add an additional factor of 1 to the calculations which is not required. To use the storage calculator, move users with activated BlackBerry devices from the Tier-1 profile to the Tier-2 profile. In Tier-2, enter the mail server database IOPS multiplication factor of 2.16 from the results table if the users are also running Microsoft Outlook at the same time. If the users are fully mobile and are not running Microsoft Outlook at the same time, this factor is much lower.
24
Using the impact results for the messaging server in your organization's environment
The random access patterns for the messaging server database are more demanding on disk throughput capacity than the sequential write patterns of the transaction logs. Focus on the messaging server database impact only.
The BlackBerry Enterprise Server processes only impact the baseline disk throughput of the messaging server. Do not include additional loads caused by other systems and processes such as anti-virus software, anti-spam software, remote access methods such as IMAP or POP, or other mobile device systems in the baseline for these calculations.
25
Conclusions
The BlackBerry Enterprise Server processes only impact the baseline load of the messaging server. Do not include additional loads caused by other systems and processes such as anti-virus software, anti-spam software, remote access methods such as IMAP or POP, or other mobile device systems in the baseline for these calculations.
Conclusions
BlackBerry Enterprise Server You should configure the BlackBerry Enterprise Server with sufficient processor capacity to manage the number of BlackBerry device users in your organization's environment and their workload. You can install and configure multiple BlackBerry Enterprise Server instances to manage additional users. In medium-sized and large organizations, you should not host the BlackBerry Administration Service and BlackBerry Configuration Database on the computer that hosts the BlackBerry Enterprise Server.
26
Workload details
To improve performance and to keep the network latency as low as possible, you can place the computers that host BlackBerry Enterprise Server instances in close proximity to the computers that host the messaging server and user accounts. You can configure multiple BlackBerry Enterprise Server instances to use the same database server. Computer that hosts the BlackBerry Administration Service You should configure the computer that hosts the BlackBerry Administration Service with sufficient memory to manage the number of BlackBerry device users in your organization's environment and their workload. The BlackBerry Administration Service performs various administrative tasks that can consume significant processor resources in an environment that includes multiple BlackBerry Enterprise Server instances. These tasks were not tested in the benchmarking tests. To improve performance and to keep the network latency as low as possible, you can place the computer that hosts the BlackBerry Administration Service in close proximity to the database server. Research In Motion plans to conduct further performance tests and publish additional performance documentation to indicate the workloads that impact the performance of the computer that hosts the BlackBerry Administration Service. Database server You should configure the database server with sufficient processor capacity and disk throughput capacity to manage the number of BlackBerry device users and tasks in your organization's environment. Various administrative tasks that the BlackBerry Enterprise Server and BlackBerry Administration Service perform can consume significant processor resources and disk throughput in an environment that includes multiple BlackBerry Enterprise Server instances. These tasks were not tested in the benchmarking tests. Research In Motion plans to conduct further performance tests and to publish additional performance documentation to indicate the workloads that impact the database server. Microsoft Exchange You should configure the Microsoft Exchange messaging server with sufficient processor capacity and disk throughput capacity to manage the additional resource load caused by adding BlackBerry device users to your organization's environment. You cannot apply simple multipliers to the messaging server resources because other applications on the messaging servers, such as antivirus software, backup processes, auditing software, and archiving software, might impact the load statistics. It is a best practice to use Microsoft Exchange 2007 or later. You should configure the Microsoft Exchange server to have access to as much memory as possible. Microsoft Exchange benefits greatly from having access to sufficient memory to cache much of its data. This greatly reduces disk traffic and the impact of the BlackBerry Enterprise Server on disk resources.
Workload details
General workload information
Hours per day 8
27
Workload details
Target workload split Target email message type Mailbox prepopulation Number of recipients per email message Number of invitees per meeting
75% desktop email application / 25% BlackBerry device 40% HTML / 60% Text used in all cases 3 to 9 (average 6) 5
Characteristics of the email messages that were created by the Microsoft Exchange Load Generator
Email message description Small email message with markup Small email message Medium-sized email message with markup Medium-sized email message Large email message with markup Large email message Small document attachment Small document attachment Small spreadsheet attachment Small spreadsheet attachment HTML email with inline .jpg file Medium email message with embedded image Format HTML Text HTML Text HTML Text HTML HTML HTML HTML HTML HTML Attachment/graphics Text markup none none none none none none Microsoft Word 2003 document Microsoft Word 2007 document Microsoft Excel 2003 document Microsoft Excel 2007 document JPG graphic file BMP graphic image Yes No Yes No Yes No Yes Yes Yes Yes No Yes Weight 75 75 60 60 80 80 100 100 85 85 60 25 Size (KB) 1 1 2 2 4 4 38 18 18 13 44 40
28
Workload details
Email message description Medium-sized email message with embedded image Medium-sized presentation attachment Large presentation attachment Large document attachment Large document attachment
Format Text
Weight 25
Size (KB) 40
HTML
Microsoft Yes PowerPoint 2007 file Microsoft PowerPoint 2007 file Microsoft Word 2003 document Microsoft Word 2007 document Yes Yes Yes
50
30
20 10 10
Characteristics of the email messages that were created by the BlackBerry Performance Engineering Resource Kit
Email message description No attachment Attachment Format Text Text Attachment/graphics % none 77 1 attachment chosen in 23 the following weightings: 60% 69.5 KB JPG 35% 103 KB JPG Forwarded email message 5% 1.16 MB JPG Text and original email None message All forwarded email messages Adds ~1500 bytes of text to original message Size ~200 bytes text ~150 bytes text with attachment
29
Workload details
Workload detail
Active 6 / user / day 27 or 45 checks / user / day 45% Reply 4% Reply To All 5% Forward 10% Move to folder 25% Delete
Email message send 8 / user / day Inbox processing - check inbox for email 27 or 45 checks / user / day messages 45% Reply 4% Reply To All 5% Forward 10% Move to folder 25% Delete Meeting creation Meeting response Appointment creation Notes 2 / user / day Accept 70% 1 / user / day Create 2 / user / day Modify 1 / user / day Personal contacts Delete 1 / user / day Create 3.4 / user / day Modify 1 / user / day Tasks Delete 1 / user / day Create 4 / user / day Modify 1 / user / day BlackBerry MDS push rate Delete 1 / user / day Baseline - off Passive - 115.2 pushes / user / day
1.5 / user / day Accept 70% 1 / user / day Create 2 / user / day Modify 1 / user / day Delete 1 / user / day Create 3.4 / user / day Modify 1 / user / day Delete 1 / user / day Create 4 / user / day Modify 1 / user / day Delete 1 / user / day 115.2 Pushes / user / day
30
Workload facet
Passive
Active 5% Mark for follow-up 12% Reply 1% Reply To All 2% Forward 3% Delete 50% Request More
Meeting creation
Off
Off
Arrival driven (not polled) Process all attachments 10% Accept 5% Decline 5% Tentative 10% Delegate (Forward)
Synchronization of mailbox, folder BlackBerry devices accept updates from Active - Bidirectional management, organizer data, and so on the BlackBerry Enterprise Server Synchronization data generation Off 10 updates / user / day (BlackBerry device to BlackBerry 80% mail server data: tasks, memos, Enterprise Server) email message filters, email message settings 10% BlackBerry device management Remote full text mail search Off 10% Backup 1 / user / day Calendar availability lookup Contact lookup BlackBerry MDS HTTP retrieve Off Off Off 50% subject searches 50% body searches
31
Drivers
Processor
Counter % Processor Use Guidelines < 75%
32
Disk I/O
Disk throughput capacity is critical for messaging servers and the BlackBerry Enterprise Server. One of the major causes of slow email message delivery is when one or more disks on a messaging server is over-utilized. Counter % Disk Busy Time % Disk Idle Time Disk Transfers/sec Average Disk Queue length Average Seconds per Read or Write Guidelines Not reliable, use % Disk Idle Time instead > 45% Depends on disk speed, type, RAID configuration, cache characteristics < 120 to 180 IOPS per disk spindle for 15 K RPM drives Typically used for Direct Attached storage < 1 per spindle Typically used for SAN storage Messaging servers can be particularly sensitive to high latencies Average: less than 5, 10, or 20 ms, depending on the application Logical Disk Free Megabytes Spikes: over 50 ms for several seconds can indicate performance issues Often overlooked; if drives fill up, processing might stop
Memory Server
The server memory is a global resource for all processes. Counter Available Bytes Guidelines > 50 MB (In the Windows Task Manager, Total - Committed = (approx) Available)
Memory Process
33
You can monitor the memory of individual processes to determine a root cause if the server memory is being consumed. Counter Private Bytes Guidelines Private Bytes is the terminology used in the Windows Performance Monitor. In the Windows Task Manager, this counter is known as the VM Size, and must be added as a column since it is not visible by default. It is not the same as the Mem Usage column in the Windows Task Manager. The Private Bytes or VM Size counter typically demonstrates whether a process has a memory allocation problem. Caches that grow slowly also build up this counter. This is the user mode address space of a process and is available in the Windows Performance Monitor only. It is sometimes called virtual memory, however, you cannot view it in the Windows Task Manager. This counter is not the same as the VM Size measure that is available in the Windows Task Manager. On 32-bit Windows systems, each process can only address 2 GB unless you configure the 3 GB switch. On 64-bit Windows systems, a 32-bit process that is large-address aware can address up to 4 GB.
Virtual Bytes
Memory/Disk Interactions Paging might display as a disk bottleneck, but is actually a memory issue
Memory/CPU Interaction - Garbage Collection (Java, .NET) Managed memory allocation problem might display as high CPU
34
The BlackBerry Enterprise Server for Microsoft Exchange and the BlackBerry Enterprise Server for IBM Lotus Domino perform these operations similarly. The performance characteristics of these operations are essentially the same for both platforms. The performance testing results for the BlackBerry Enterprise Server for Microsoft Exchange are the only results that are reported. For more information about the operations that the BlackBerry Enterprise Server performs, visit www.blackberry.com/go/ serverdocs to see the BlackBerry Enterprise Server Administration Guide and the BlackBerry Policy Service Throttling Technical Note.
Testing conditions
35
Testing conditions
Environment
BlackBerry Enterprise Server
Type Hardware Components 1 HP ProLiant BL460c G1 server with the following features: Software Intel Xeon Processor 5150 with a dual core at 2.66 GHz (2 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200 controller with 64 MB read cache with two 34 GB drives in a RAID0 configuration Windows Server 2003 Standard x64 SP 2 BlackBerry Enterprise Server for Microsoft Exchange version 5.0; all components installed on the computer except the BlackBerry Administration Service
36
Testing conditions
Type
Components 4 GB memory HP Smart Array E200 controller with 64 MB read cache with two 34 GB drives in a RAID0 configuration Windows Server 2003 Standard x64 SP 2 HP MPIO driver version 3.01 Microsoft SQL Server 2005 (Standard Edition x64) SP 2
Software
Load generators
Type Hardware Components 2 VMware ESX 3.x-based virtual machines with the following features: Software Virtual 5150 Processor core at 2.66 Ghz 512 MB memory Virtual NIC 20 GB virtual local disk space Windows Server 2003 Standard SP 2
Testing tools
37
Testing conditions
Type
Components BlackBerry Performance Engineering Resource Kit version 2.0: a tool developed by Research In Motion that simulates the BlackBerry device network, permitting testing without requiring the BlackBerry Infrastructure or a population of BlackBerry devices. Microsoft Exchange Load Generator version 8.0.1: a tool that Microsoft developed that generates client-simulated loads for the Microsoft Exchange messaging server. The tool uses XML scripts that specify user tasks and rates for email, calendar, task, and contact list activities, and send and respond to meeting requests.
Test details
Sending IT policy updates to BlackBerry devices
If you assign an IT policy to a user account or group, change an existing IT policy, or delete an existing IT policy, the BlackBerry Policy Service sends an IT policy update to the BlackBerry devices that are associated with the IT policy. The IT policy update occurs in three phases. In the first phase, the BlackBerry Administration Service determines which IT policy to assign to user accounts based on predefined rules for determining group membership and the priority of IT policies. The BlackBerry Administration Service creates jobs and job tasks that deliver the IT policy updates to BlackBerry devices. In the second phase, after you assign, change, or delete an IT policy, the BlackBerry Enterprise Server waits for a default period of 15 minutes before it sends the IT policy update to BlackBerry devices. During this waiting period, the BlackBerry Enterprise Server does not have a performance impact on system resources. In the third phase, the BlackBerry Policy Service sends the IT policy update to BlackBerry devices. The IT policy data is throttled according to the throttling settings that you can configure. For more information about configuring IT policy throttling and settings for the BlackBerry Policy Service, visit www.blackberry.com/go/serverdocs to read the BlackBerry Policy ServiceThrottling Technical Note and the BlackBerry Enterprise Server Administration Guide. The BlackBerry Enterprise Server that was used for the performance tests included two user groups, a parent group and a child subgroup. In each test, user accounts were added to the child group and the IT policy was assigned to the parent group. Two configurations were used for the performance tests. Each configuration was tested with 500, 1000, and 2000 users. In the tests that used the first configuration (referred to as IP1, IP2, and IP3), the BlackBerry Policy Service was configured to send a maximum of 100 IT policies and service books each minute (this is the default setting). In the tests that used the second configuration (referred to as IP4, IP5, and IP6), the BlackBerry Policy Service was configured to send a maximum of 200 IT policies and service books each minute. The maximum number of IT policies and service books that the BlackBerry Policy Service can send can be configured using the PolicyThrottlingMaxBESJobs trait in TraitTool.exe. For more information about TraitTool.exe, visit www.blackberry.com/go/serverdocs to read the BlackBerry Policy Service Throttling Technical Note.
38
Testing conditions
The performance tests were configured to use the default values for the IT policy throttling settings that are available in the BlackBerry Administration Service. All other user controlled workloads on the BlackBerry Enterprise Server, including email message traffic and web browsing, were turned off.
39
40
IT policy push data Test Number of users Throttling IT policy jobs/ min Phase 1: Reconciliation time (minutes) BlackBerry Enterprise Server % Processor Time BlackBerry Enterprise Server Committed Bytes (MB) BlackBerry Administration Service % Processor Time BlackBerry Administration Service Committed Bytes (MB) Database % Processor Time Database Disk Throughput (IOPS) Phase 2: Wait time (minutes) Phase 3: IT policy delivery time (minutes) BlackBerry Enterprise Server % Processor Time BlackBerry Enterprise Server Committed Bytes (MB) BlackBerry Administration Service % Processor Time BlackBerry Enterprise Server Committed Bytes (MB) Database % Processor Time Database Disk Throughput (IOPS)
41
Performance graphs
IT policy reconciliation time (in minutes)
42
43
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
The following table displays the results of the performance tests. The approximate resource demands that are indicated in the table are in addition to the resource demands that were caused by typical user activities such as sending and receiving email messages.
44
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
When the number of users increased, the time that was required to reconcile group relationships and conflicts, deliver application control policies, and deliver application data and updates to BlackBerry devices increased linearly. The processor usage of the BlackBerry Enterprise Server, the computer that hosts the BlackBerry Administration Service, and the database server remained consistent within a margin of error when the number of users increased. In the first phase, when the BlackBerry Administration Service reconciled group relationships and conflicts for application settings, the time that was required to complete the reconciliation corresponded to the number of BlackBerry Java Applications that were reconciled. The processor usage of the BlackBerry Enterprise Server, the computer that hosts the BlackBerry Administration Service, and the database server was relatively consistent for all of the testing configurations. The computer that hosted the BlackBerry Administration Service used most of a single processor core. The second phase does not have a performance impact. In the third phase, when the BlackBerry Policy Service delivered application control policies to the BlackBerry devices, the time and resources that were required to deliver the application control policies did not correspond to the application configurations. The BlackBerry Administration Service contributed significant processor resources, while the database server contributed some processor and disk resources. In the fourth phase, the BlackBerry Policy Service delivered application data or updates to the BlackBerry devices. This process is multi-threaded, runs primarily on the BlackBerry Enterprise Server, and is throttled by the available hardware resources only, especially the processor capacity. As a result, the BlackBerry Enterprise Server used a large amount of processor resources for all configurations. The other servers were not impacted heavily. The processor usage of the BlackBerry Enterprise Server depended on the number of application modules in the application data or updates and the size of the applications that were sent or updated. The processor usage of the computer that hosts the BlackBerry Administration Service corresponded to the total size of the applications. The processor use and disk throughput of the database server corresponded to the number of application modules in the application data or updates. In the table, App 1 is the Google Maps mapping service application and App 2 is the BLOOMBERG Mobile application. Test Number of users BlackBerry Java Applications used Number of application modules Application size (KB) Phase 1: Reconciliation time (minutes) BlackBerry Enterprise Server % Processor Time T1 500 App 1 T2 1000 App 1 T3 2000 App 1 T4 500 App 2 T5 1000 App 2 T6 2000 App 2 T7 500 App 1 and App 2 24 1766 12 <1 T8 1000 App 1 and App 2 24 1766 24 <1 T9 2000 App 1 and App 2 24 1766 47 <1
9 818 6 <1
9 818 11 <1
9 818 22 <1
15 948 8 <1
15 948 17 <1
15 948 33 <1
45
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
Test BlackBerry Enterprise Server Committed Bytes (MB) BlackBerry Administration Service % Processor Time BlackBerry Administration Service Committed Bytes (MB) Database % Processor Time Database Disk Throughput (IOPS) Phase 2: Wait time (minutes) Phase 3: Application control policy delivery time (minutes) BlackBerry Enterprise Server % Processor Time BlackBerry Enterprise Server Committed Bytes (MB) BlackBerry Enterprise Server % Processor Time BlackBerry Administration Service Committed Bytes (MB) Database % Processor Time Database Disk Throughput (IOPS)
T1 1234
T2 1218
T3 1233
T4 1216
T5 1216
T6 1217
T7 1240
T8 1214
T9 1218
37.4
38.7
39.1
42.0
42.0
42.3
42.9
42.4
43.2
994
972
1001
962
967
945
936
949
986
4.3 14 15 6
4.5 15 15 11
4.4 15 15 20
3.5 12 15 6
3.4 11 15 11
3.5 12 15 21
2.9 10 15 6
2.9 9 15 11
2.9 7 15 21
4.9 1227
3.1 1221
3.2 1222
0.9 1220
1.7 1216
1.9 1225
0.9 1228
3.0 1211
1.2 1217
19.9 1054
19.8 1085
15.0 1096
21.7 1040
22.4 1064
18.3 1057
27.1 994
23.1 1027
17.8 1043
4.2 70
3.8 73
3.6 69
4.5 64
4.7 70
4.9 75
4.4 67
4.8 76
4.5 73
46
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
Test Phase 4: Application delivery time (minutes) BlackBerry Enterprise Server % Processor Time BlackBerry Enterprise Server Committed Bytes (MB) BlackBerry Administration Service % Processor Time BlackBerry Administration Service Committed Bytes (MB) Database % Processor Time Database Disk Throughput (IOPS)
T1 6 29.5 1226
T2 10 34.7 1228
T3 20 36.5 1231
T4 8 94.4 1233
T5 16 91.7 1243
T6 31 92.9 1265
T7 11 84.6 1234
T8 20 88.2 1219
T9 41 88.5 1225
8.6
7.8
12.3
3.8
5.4
9.4
10.4
12.2
16.0
1074
1100
1102
1071
1084
1071
1030
1040
1076
3.0 60
3.4 71
3.8 74
6.0 141
6.3 149
7.0 157
6.3 140
6.6 145
7.3 151
Performance graphs
In the following graphs, application 1 is the Google Maps mapping service application and application 2 is the BLOOMBERG Mobile application. Application push reconciliation time
47
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
48
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
49
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
BlackBerry Administration Service CPU Utilization % during delivery of application control policies
50
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
51
Results: Sending BlackBerry Java Applications and application updates to BlackBerry devices
52
53
Results: Updating user directory list information in the BlackBerry Configuration Database
Results: Updating user directory list information in the BlackBerry Configuration Database
The following table displays the results of the performance tests. The approximate resource demands that are indicated in the table are in addition to the resource demands that were caused by typical user activities such as sending and receiving email messages. The update process for the user directory list information was throttled at a default rate of 5000 entries for each minute. As a result, the time that was required to complete the update increased linearly as the number of users increased. The processor usage on all servers was not significant in any of the tests. The database server used some disk throughput that remained consistent for all of the tests. Test Number of BlackBerry device users Number of users without BlackBerry devices Distribution lists User directory list refresh time (minutes) BlackBerry Enterprise Server % Processor Time BlackBerry Enterprise Server Committed Bytes (MB) BlackBerry Administration Service % Processor Time BlackBerry Administration Service Committed Bytes (MB) Database % Processor Time Database Disk IOPS L1 500 1500 1000 00:40 <1 1243 <1 977 L2 1000 3000 2000 01:10 <1 1243 <1 977 L3 2000 6000 4000 02:30 <1 1234 <1 975
1.0 61
0.8 78
1.2 69
Performance graphs
Refresh time (minutes)
54
Results: Updating user directory list information in the BlackBerry Configuration Database
55
Results: Updating user directory list information in the BlackBerry Configuration Database
56
Comparing BlackBerry Enterprise Server version 5.0 with BlackBerry Enterprise Server version 4.1 SP6 MR5
Comparing BlackBerry Enterprise Server version 5.0 with BlackBerry Enterprise Server version 4.1 SP6 MR5
Overview: Comparing BlackBerry Enterprise Server version 5.0 with BlackBerry Enterprise Server version 4.1 SP6 MR5
Research In Motion conducted performance benchmarking tests to compare the hardware characteristics of BlackBerry Enterprise Server version 5.0 and BlackBerry Enterprise Server version 4.1 SP6 MR5. The test environment for the BlackBerry Enterprise Server included 2000 users who each have an email account that is associated with the Microsoft Exchange server. Each user's email account was prepopulated with approximately 100 MB of email messages, tasks, and address book entries. Each performance test was conducted for four hours. The data that was compiled in the final two hours of the performance testing was used for the performance benchmarking analysis. The tests were run multiple times to verify that the results were repeatable and accurate. The results of the performance tests and the conclusions are guidelines only. The results are based on the workloads that were used in the performance tests and might vary depending on your organization's environment and the usage patterns of BlackBerry device users. You should not apply simple multipliers to the messaging server resources based on the results because applications on the messaging servers, such as antivirus software, backup processes, auditing software, and archiving software, might affect the load statistics.
Testing conditions
Environment
BlackBerry Enterprise Server
Type Hardware Components One HP ProLiant BL460c G1 server with the following features: Software Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter Windows Server 2003 Standard x64 SP2
57
Testing conditions
Type
Components BlackBerry Enterprise Server version 5.0 for Microsoft Exchange and BlackBerry Enterprise Server version 4.1 SP6 MR5 for Microsoft Exchange ; all components installed on the computer except the BlackBerry Administration Service (version 5.0 only)
Computer that hosts the BlackBerry Administration Service (for BlackBerry Enterprise Server version 5.0 only)
Type Hardware Components One HP ProLiant BL460c G1 server with the following features: Software Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200i controller with 64 MB read cache with two 72 GB drives in a RAID1 configuration Windows Server 2003 Standard x64 SP2 BlackBerry Enterprise Server version 5.0 for Microsoft Exchange ; BlackBerry Administration Service only
Database server
Type Hardware Components One HP ProLiant BL460c G1 server with the following features: Software Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200i controller with 64 MB read cache with two 72 GB drives in a RAID1 configuration QLogic QLA 2400 series dual port Fibre Channel HBA Windows Server 2003 Standard x64 SP2 HP MPIO driver version 3.01 Microsoft SQL Server 2005 (Standard Edition x64) SP2
58
Testing conditions
Type Hardware
Components One HP ProLiant BL460c G1 server with the following features: 2 Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (8 cores total) 10 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200i controller with 64 MB read cache with two 72 GB drives in a RAID1 configuration QLogic QLA 2400 series dual port Fibre Channel HBA 3 TB on an EVA Disk Array for messaging server data storage Windows Server 2003 Standard x64 SP2 Microsoft Exchange 2007 SP1
Software
Load generators
Type Hardware Components Two VMware ESX 3.x-based virtual machines with the following features: Software virtual E5440 Processor core at 2.83 Ghz 512 MB memory virtual NIC 20 GB virtual local disk space Windows Server 2003 Standard SP2
Testing tools BlackBerry Performance Engineering Resource Kit version 2.0: a tool developed by Research In Motion that simulates the BlackBerry device network and permits testing without requiring the BlackBerry Infrastructure or a population of BlackBerry devices. Microsoft Exchange Load Generator version 8.0.1 (custom configuration): a tool that Microsoft developed that generates client-simulated loads for the Microsoft Exchange messaging server. The tool uses XML scripts that specify user tasks and rates for email, calendar, task, and contact list actions, and send and respond to meeting requests. BlackBerry MDS Connection Service push load test tool: an internal tool that RIM developed that simulates applications pushing web content to BlackBerry devices.
59
Type
Components Organizer data load driver: an internal tool developed by RIM that simulates users creating, changing, and deleting organizer items such as notes, tasks, and contacts.
Test details
The performance benchmarking tests were conducted using BlackBerry Enterprise Server version 5.0 in an environment with 2000 BlackBerry device users and BlackBerry Enterprise Server version 4.1 SP6 MR5 in an environment with 2000 BlackBerry device users. The tests were designed to simulate the typical impact that 2000 BlackBerry device users have on an organization's system resources with a defined workload for each user. Load generators were used to simulate the activities of users receiving, replying to, and forwarding email messages, as well as retrieving the full text of lengthy email messages and message attachments on BlackBerry devices. Approximately 25% of the workload was performed by simulated users on BlackBerry devices. All workloads were running, and identical workloads were run on both BlackBerry Enterprise Server versions. Each user's email account was prepopulated with email messages before the performance tests occurred. 250 email messages were prepopulated in each user's inbox, and five additional folders in each user's messaging account were prepopulated with 200 messages in each folder. The size of each user's email account was approximately 100 MB. Workload description The workload that was used for the performance tests represented a broad scope of the BlackBerry Enterprise Server version 5.0 and BlackBerry Enterprise Server version 4.1 SP6 functionality. The simulated BlackBerry devices were configured to only use features that are common to both versions of the BlackBerry Enterprise Server and rich-content email messages were not used. The workload consisted of the following activities: managing email messages: marking email messages as read or unread, marking email messages for follow-up, and filing, deleting, and forwarding email messages; supporting rich-content and text email messages managing meeting invitations: creating (with and without document attachments), delivering, forwarding, and replying to meeting invitations managing calendar appointments managing personal contact lists and distribution lists managing tasks The following workload activities were performed on the BlackBerry devices: searching for remote email messages searching the contact list retrieving additional text for lengthy email messages retrieving and viewing images and other supported attachments receiving push content creating and sending email messages and meeting requests viewing calendar availability for meeting participants
Related topics Workload details, 69
60
Testing results
Testing results
Results: BlackBerry Enterprise Server
To produce an accurate comparison of performance data, the same workload was used for the performance tests for BlackBerry Enterprise Server version 5.0 and BlackBerry Enterprise Server version 4.1 SP6 MR5. The BlackBerry Enterprise Server services for BlackBerry Enterprise Server version 5.0 used 2202 MB of memory, an increase of 68 MB compared to the same workload that was running on BlackBerry Enterprise Server version 4.1 SP6 MR5. The processor usage increased by a ratio of 1.20 when BlackBerry Enterprise Server version 5.0 was used. In the following table, the private bytes of the BlackBerry Monitoring Service were subtracted from the committed bytes of the BlackBerry Enterprise Server because the BlackBerry Monitoring Service is typically hosted on a separate server. BlackBerry Enterprise Server data BlackBerry Enterprise BlackBerry Enterprise Notes Server version 4.1 SP6 Server version 5.0 Number of users % Processor Time Committed Bytes (MB) Total Disk Throughput (IOPS) Network Throughput (Mbps) Messages received/min Messages sent/min 2000 15 2134 28 8.95 1107 172 2000 18 2202 24 9.87 1087 163 Ratio (5.0 / 4.1 SP6): 1.20 Difference (5.0 - 4.1 SP6): 68
The BlackBerry Monitoring Service was introduced in BlackBerry Enterprise Server version 4.1 SP5 as an additional service that must be installed separately from the BlackBerry Enterprise Server (the BlackBerry Monitoring Service was not included in the BlackBerry Enterprise Server installation files). Research In Motion did not report the resource usage of the BlackBerry Monitoring Service that was used in BlackBerry Enterprise Server version 4.1 SP5. In BlackBerry Enterprise Server version 5.0, the BlackBerry Monitoring Service can be installed as an optional component of the BlackBerry Enterprise Server using the BlackBerry Enterprise Server installation files. The BlackBerry Monitoring Service did not have a significant impact on the performance of the environment throughout the tests. For the purpose of the performance tests, the BlackBerry Monitoring Service was installed on the computer that hosts the BlackBerry Enterprise Server components. In most environments, the BlackBerry Monitoring Service should not be installed on the computer that hosts the BlackBerry Enterprise Server because this might result in an increased use of system resources if the BlackBerry Monitoring Service is configured for active monitoring.
61
Testing results
BlackBerry Monitoring Service memory usage BlackBerry Enterprise Server version 4.1 SP6 Private Memory (MB) -
Performance graphs
BlackBerry Enterprise Server impact - % Processor Time
62
Testing results
63
Testing results
Performance graphs
Database impact - Transactions per second
64
Testing results
65
Testing results
Performance graphs
Messaging server impact - % Processor Time
66
67
Conclusions
Conclusions
BlackBerry Enterprise Server Using BlackBerry Enterprise Server version 4.1 SP6 MR5 as a baseline for measuring performance statistics, the test results suggest that BlackBerry Enterprise Server version 5.0 requires 20% more processor capacity than BlackBerry Enterprise Server version 4.1 SP6. BlackBerry Enterprise Server version 5.0 uses amounts of disk I/O capacity, network bandwidth, and memory that are comparable to BlackBerry Enterprise Server version 4.1 SP6, but BlackBerry Enterprise Server version 5.0 maintains significantly fewer database connections. You should configure the BlackBerry Enterprise Server with sufficient processor capacity to manage the number of BlackBerry device users in your organization's environment and their workload. You can install and configure multiple BlackBerry Enterprise Server instances to manage additional users. In medium-sized and large organizations, you should not host the BlackBerry Administration Service and BlackBerry Configuration Database on the computer that hosts the BlackBerry Enterprise Server. To improve performance and to keep the network latency as low as possible, the best practice is to place the computers that host BlackBerry Enterprise Server instances in a location that is in close proximity to the computers that host the messaging server and user accounts. You can configure multiple BlackBerry Enterprise Server instances to use the same database server. Computer that hosts the BlackBerry Administration Service You should configure the computer that hosts the BlackBerry Administration Service with sufficient memory to manage the number of BlackBerry device users in your organization's environment and their workload. The BlackBerry Administration Service processes used a total of 575 MB of base memory. The BlackBerry Administration Service performs various administrative tasks that can consume significant processor resources in an environment that includes multiple BlackBerry Enterprise Server instances. These tasks were not tested in the benchmarking tests. To improve performance and to keep the network latency as low as possible, the best practice is to place the computer that hosts the BlackBerry Administration Service in a location that is in close proximity to the database server. Database server BlackBerry Enterprise Server version 5.0 uses connection pooling, which reduced the number of database connections by 68% compared to BlackBerry Enterprise Server version 4.1 SP6 MR5. You should configure the database server with sufficient processor capacity and disk throughput capacity to manage the number of BlackBerry device users and tasks in your organization's environment. Various administrative tasks that the BlackBerry Enterprise Server and BlackBerry Administration Service perform can consume significant processor resources and disk throughput in an environment that includes multiple BlackBerry Enterprise Server instances. These tasks were not tested in the benchmarking tests. Microsoft Exchange
68
Workload details
The performance statistics of the Microsoft Exchange messaging server were not affected by the BlackBerry Enterprise Server version that was used in the tests. You should configure the Microsoft Exchange messaging server with sufficient processor capacity and disk throughput capacity to manage the additional resource load caused by adding BlackBerry device users to your organization's environment. You cannot apply simple multipliers to the messaging server resources because other applications on the messaging servers, such as antivirus software, backup processes, auditing software, and archiving software, might impact the load statistics. It is a best practice to use Microsoft Exchange 2007 or later. You should configure the Microsoft Exchange server so that it can access as much memory as possible. Microsoft Exchange benefits greatly from having access to sufficient memory to cache much of its data, which greatly reduces disk traffic and the impact of the BlackBerry Enterprise Server on disk resources. BlackBerry Monitoring Service The BlackBerry Monitoring Service processes used 225 MB of base memory. If you change the monitoring configuration, the amount of base memory that the BlackBerry Monitoring Service uses is subject to change.
Workload details
General workload information
Hours per day Target workload split Mailbox prepopulation Number of recipients per email message Number of invitees per meeting 8 75% desktop email application / 25% BlackBerry device used in all cases 3 to 9 (average 6) 5
Characteristics of the email messages that were created by the Microsoft Exchange Load Generator
Email message description Small email message with markup Small email message Medium-sized email message with markup Medium-sized email message Format HTML Text HTML Text Attachment/graphics Text markup none none none none Yes No Yes No Weight 75 75 60 60 Size (KB) 1 1 2 2
69
Workload details
Email message description Large email message with markup Large email message Small document attachment Small document attachment Small spreadsheet attachment Small spreadsheet attachment HTML email with inline .jpg file Medium-sized email message with embedded image Medium-sized email message with embedded image Medium-sized presentation attachment Large presentation attachment Large document attachment Large document attachment
Attachment/graphics Text markup none none Microsoft Word 2003 document Microsoft Word 2007 document Microsoft Excel 2003 document Microsoft Excel 2007 document JPG graphic file BMP graphic image Yes No Yes Yes Yes Yes No Yes
Size (KB) 4 4 38 18 18 13 44 40
Text
No
25
40
HTML
Microsoft Yes PowerPoint 2007 file Microsoft PowerPoint 2007 file Microsoft Word 2003 document Microsoft Word 2007 document Yes Yes Yes
50
30
20 10 10
Characteristics of the email messages that were created by the BlackBerry Performance Engineering Resource Kit
70
Workload details
Attachment/graphics % none 77 1 attachment chosen in 23 the following weightings: 60% 69.5 KB JPG 35% 103 KB JPG
1.5 / user / day Accept 70% 1 / user / day Create 2 / user / day Modify 1 / user / day
Personal contacts
Delete 1 / user / day Create 3.4 / user / day Modify 1 / user / day
71
Workload details
Active Delete 1 / user / day Create 4 / user / day Modify 1 / user / day
Synchronization of mailbox, folder Active - Bidirectional management, organizer data, and so on Synchronization data generation 10 updates / user / day (BlackBerry device to BlackBerry 80% mail server data: tasks, memos, email message filters, email message settings Enterprise Server) 10% BlackBerry device management 10% Backup
72
Drivers
73
No
N/A
BBAttachMonitor.exe
BlackBerry Controller BlackBerry Dispatcher BlackBerry MDS Connection Service BlackBerry Mail Store Service
BlackBerryController.exe BlackBerryDispatcher.exe bmds.exe BlackBerryMailStoreSrvr.e xe Provides services to the BlackBerry Administration Service.
74
Component
BlackBerry Enterprise Notes Server version 5.0 process BlackBerryAgent.exe Manages messaging, calendar, and contact list data, and coordinates the data with the messaging server. Multiple processes can be running. BlackBerryExtension.exe Started and managed by BlackBerry Controller. Used for BlackBerry Messaging Agent plug-ins. May be multiple processes depending on the configuration of extension plug-ins. BlackBerryPolicyServer.exe Process name changed from BlackBerry Enterprise Server version 4.1 SP6 to BlackBerry Enterprise Server version 5.0. BlackBerryRouter.exe BlackBerrySyncServer.exe
Yes
N/A
Yes
ITAdminServer.exe
Yes Yes
BlackberryRouter.exe BlackBerrySyncServer.exe
Yes
N/A
BAS-AS.exe
75
Component
BlackBerry Enterprise Notes Server version 5.0 process BAS-NCC.exe BlackBerry Administration Service Native Code Container BlackBerry Monitoring Service Application Core BlackBerry Monitoring Service Data Collection Subsystem BlackBerry Monitoring Service Polling Engine BlackBerry Monitoring Console
Yes
N/A
appsvc.exe
Yes
N/A
dcssvc.exe
Yes
N/A
enginesvc.exe
Yes
N/A
tomcat6.exe
76
Research In Motion performed two sets of tests to determine the performance characteristics of the high availability features in BlackBerry Enterprise Server version 5.0 for Microsoft Exchange. Load tests were performed to assess the system resources that are required by a BlackBerry Enterprise Server that is configured for high availability and failover tests were performed to assess the characteristics of the failover mechanism. The testing environment for the BlackBerry Enterprise Server included 2000 users who each have an email account on the Microsoft Exchange server. Each user's email account was prepopulated with approximately 100 MB of email messages, tasks, journal items, and contact list entries. Each load test was run for 4 hours. The data compiled in the final two hours of the performance testing was used for the performance benchmarking analysis in the baseline tests with no failover. The data from all 4 hours of testing was used for the tests where a failover occurred. The failover was triggered at the end of the second hour. The tests were run multiple times to verify that the results were repeatable and accurate. Performance counters were monitored to verify that hardware bottlenecks were not present during testing. The results of the performance tests and the conclusions that are based on the results are guidelines only. The results are based on the workloads used in the performance tests and might vary depending on your organization's environment and the usage patterns of BlackBerry device users. You should not apply simple multipliers to the message server resources based on the results because applications on the messaging servers, such as antivirus software, backup processes, auditing software, and archiving software, might affect the load statistics.
Testing conditions
Environment
BlackBerry Enterprise Server instances (primary and standby)
Type Hardware Components Two HP ProLiant BL460c G1 servers with the following features: Intel Xeon Processor E5440 with a quad core at 2.83 GHz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter QLogic QLA 2400 series dual port Fibre Channel HBA 1-100 GB on an EVA Disk Array for messaging server data storage
77
Testing conditions
Type Software
Components Windows Server 2003 Standard x64 SP2 HP MPIO driver version 3.01 BlackBerry Enterprise Server version 5.0 for Microsoft Exchange ; all components installed on the computer except the BlackBerry Administration Service and BlackBerry Monitoring Service
Database server
78
Testing conditions
Type Hardware
Components One HP ProLiant BL460c G1 server with the following features: Intel Xeon Processor E5440 with a quad core at 2.83 Ghz (4 cores total) 4 GB memory HP NC373i Integrated Multifunction Gigabit Server Adapter HP Smart Array E200i controller with 64 MB read cache with two 72 GB drives in a RAID1 configuration QLogic QLA 2400 series dual port Fibre Channel HBA 100 GB volume on an EVA Disk Array for Microsoft SQL Server database and logs Windows Server 2003 Standard x64 SP2 HP MPIO driver version 3.01 Microsoft SQL Server 2005 (Standard Edition x64) SP2
Software
Load generators
Type Hardware Components Two VMware ESX 3.x-based virtual machines with the following features:
79
Testing conditions
Type
Components virtual E5440 Processor core at 2.83 Ghz 512 MB memory virtual NIC 1-20 GB virtual local disk space Windows Server 2003 Standard SP2
Software
Testing tools BlackBerry Performance Engineering Resource Kit version 2.0: a tool that Research In Motion developed that simulates the BlackBerry device network and permits testing without requiring the BlackBerry Infrastructure or a population of BlackBerry devices. Microsoft Exchange Load Generator version 8.0.1 (custom configuration): a tool that Microsoft developed that generates client-simulated loads for the Microsoft Exchange messaging server. The tool uses XML scripts that specify user tasks and rates for email, calendar, task, and contact list activities, and send and respond to meeting requests. BlackBerry MDS Connection Service push load test tool: an internal tool that RIM developed that simulates applications pushing web content to BlackBerry devices. Organizer data load driver: an internal tool that RIM developed that simulates the activity of users creating, changing, and deleting organizer items such as notes, tasks, and contacts.
Test details
Load tests
The load tests measured the resource impact of adding a standby BlackBerry Enterprise Server to an existing BlackBerry Domain. Test mode Baseline Standby running Description This test mode runs a BlackBerry Enterprise Server with no high availability components. This test mode provides baseline results for comparison. This test mode runs primary and standby BlackBerry Enterprise Server instances, configured for automatic failover.
Failover tests
80
The failover tests measured how the primary and standby BlackBerry Enterprise Server instances processed messages and used system resources during a failover event. The tests measured failovers that were initiated manually using the BlackBerry Administration Service and failovers that were triggered by automatic health scores. Test mode Manual Failover Description This test mode runs primary and standby BlackBerry Enterprise Server instances. At the start of the second hour, the BlackBerry Administration Service was used to initiate a manual failover to the standby BlackBerry Enterprise Server. This test mode runs primary and standby BlackBerry Enterprise Server instances, configured for automatic failover. The BlackBerry Controller was configured to not restart the BlackBerry Dispatcher. At the start of the second hour, the BlackBerry Dispatcher process on the primary BlackBerry Enterprise Server was terminated using Windows Task Manager.
Automatic Failover
Workload description
The same workload was used for all performance tests. The workload represented a broad scope of the BlackBerry Enterprise Server version 5.0 functionality. The workload consisted of the following activities: managing email messages: marking email messages as read or unread, marking email messages for follow-up, and filing, deleting, and forwarding email messages; supporting rich-content and text email messages managing meeting invitations: creating, delivering, forwarding, and replying to meeting invitations managing calendar appointments managing personal contact lists and distribution lists managing tasks The following workload activities were performed on the BlackBerry devices: searching for remote email messages searching the contact list retrieving additional text for lengthy email messages retrieving and viewing images and other supported attachments receiving push content creating and sending email messages and meeting requests viewing calendar availability for meeting participants
81
messages received (messages per 1114 minute) messages sent (messages per minute) 167
1146
172
The generated mail load was marginally smaller during the baseline run. The generated mail load was marginally smaller during the baseline run. The generated mail load was marginally smaller during the baseline run.
82
Baseline
Notes
83
Load test data for the database server Test mode Baseline % Processor Time Data Disk Throughput (IOPS) Network Throughput (Mbps) transactions per second user connections <1 24 <1 24 46
Notes
Note the increase in user connections for the standby BlackBerry Enterprise Server.
84
Time required to restart the primary BlackBerry Enterprise Server services (in minutes) <1 9
BlackBerry 1318 Enterprise Server Total Message Rate (messages per minute) Pending 11 Messages Queue BlackBerry 1502 Performance Engineering Resource Kit email reception (messages per minute)
no spike
2045
11
7480
no spike
15
85
Performance graphs
Manual failover message processing rate for the BlackBerry Enterprise Server
Automatic failover message processing rate for the BlackBerry Enterprise Server
86
Manual failover pending messages queue for the BlackBerry Enterprise Server
Automatic failover pending messages queue for the BlackBerry Enterprise Server
Manual failover message rate for the BlackBerry Performance Engineering Resource Kit
87
Automatic failover message rate for the BlackBerry Performance Engineering Resource Kit
88
45 37
78 117
10.6
14.4
13.8
Performance graphs
Manual failover CPU usage for the BlackBerry Enterprise Server
89
90
91
% Processor Time Data Disk Throughput (IOPS) Network Throughput (Mbps) transactions per second user connections
<1 24
5 175
3 128
<1
3.94
3.48
24 67
202 174
5 5
133 118
5 6
Performance graphs
Manual and automatic failover CPU usage of the database server
92
21 690
none 1473
58 2045
14.6
none
none
93
Conclusions
Observations
Notes
23.79
none
37.36
Performance graphs
Manual and automatic failover disk usage for the Microsoft Exchange messaging server
Conclusions
BlackBerry Enterprise Server The addition of a standby BlackBerry Enterprise Server to the BlackBerry Domain did not cause the primary BlackBerry Enterprise Server to use increased system resources.
94
Conclusions
During standard processing, the standby BlackBerry Enterprise Server used a small amount of processor resources and network resources. The standby BlackBerry Enterprise Server used a fraction of the disk and memory resources that the primary BlackBerry Enterprise Server used with the benchmark workload. Manual failover caused a short pause in message delivery. The interruption in message delivery during the automatic failover scenario depended on the time that was required to determine the failover cause and that the environment had stabilized and to observe the appropriate timeouts before promoting the standby BlackBerry Enterprise Server to primary status. After the standby BlackBerry Enterprise Server was promoted, the amount of system resources that the BlackBerry Enterprise Server used was temporarily higher than normal. The size and duration of the resource usage was relative to the available resources and the size of the message backlog that was required to be processed. The average time that elapsed from when the component failed to when the steady state resumed was less than 30 minutes in all performance tests. You should configure both the primary BlackBerry Enterprise Server and the standby BlackBerry Enterprise Server with sufficient processor capacity to manage the number of BlackBerry device users in your organization's environment and their workload. You can install and configure multiple BlackBerry Enterprise Server instances to manage additional users. The computer that hosts the BlackBerry Administration Service The computer that hosts the BlackBerry Administration Service was unaffected by the high availability configuration and the failover events. You should configure the computer that hosts the BlackBerry Administration Service with sufficient memory to manage the number of BlackBerry device users in your organization's environment and their workload. The BlackBerry Administration Service performs various administrative tasks that can consume significant processor resources in an environment that includes multiple BlackBerry Enterprise Server instances. These tasks were not tested in the benchmarking tests. To improve performance and to keep the network latency as low as possible, you can place the computer that hosts the BlackBerry Administration Service in close proximity to the database server. The computer that hosts the BlackBerry Monitoring Service The computer that hosts the BlackBerry Monitoring Service was unaffected by the high availability configuration and the failover events. You should configure the computer that hosts the BlackBerry Monitoring Service with sufficient memory to monitor the BlackBerry Enterprise Server components in your organization's environment and their workload. The BlackBerry Monitoring Service requirements depend on the configuration that you use in your organization's environment. Database server The addition of a standby BlackBerry Enterprise Server to the BlackBerry Domain increased the number of user connections by 21. Aside from the increase in user connections, resource usage on the database server was unaffected in the performance tests. During failover processing, a spike occurred in the use of disk and CPU resources while the new primary BlackBerry Enterprise Server resumed processing and cleared the workload backlog. You should configure the database server with sufficient processor capacity and disk throughput capacity to manage the number of BlackBerry device users and tasks in your organization's environment.
95
Workload details
Various administrative tasks that the BlackBerry Enterprise Server and BlackBerry Administration Service perform can consume significant processor resources and disk throughput in an environment that includes multiple BlackBerry Enterprise Server instances. These tasks were not tested in the benchmarking tests. Microsoft Exchange messaging server The addition of a standby BlackBerry Enterprise Server to the BlackBerry Domain did not affect the resource usage of the Microsoft Exchange messaging servers. During failover processing, disk usage was higher than normal when the new primary BlackBerry Enterprise Server resumed processing and cleared the workload backlog. The size and duration of the resource usage was relative to the available resources and the size of the message backlog. You should configure the messaging server with sufficient processor capacity and disk throughput capacity to manage the additional resource load that is caused by adding BlackBerry device users to your organization's environment. You cannot apply simple multipliers to the messaging server resources because other applications on the messaging servers, such as antivirus software, backup processes, auditing software, and archiving software, might impact the load statistics.
Workload details
General workload information
hours per day target workload split target email message type 8 75% desktop email application 25% BlackBerry device 40% HTML
60% Text mailbox prepopulation used in all cases number of recipients per email message 3 to 9 (average 6) number of participants per meeting 5
Characteristics of the email messages that were created by the Microsoft Exchange Load Generator
Email message description small email message with markup small email message medium-sized email message with markup Format HTML Text HTML Attachment/graphics Text markup none none none Yes No Yes Weight 75 75 60 Size (KB) 1 1 2
96
Workload details
Email message description medium-sized email message large email message with markup large email message small document attachment small document attachment small spreadsheet attachment small spreadsheet attachment HTML email with inline .jpg file medium email message with embedded image medium-sized email message with embedded image medium-sized presentation attachment large presentation attachment large document attachment large document attachment
Format Text HTML Text HTML HTML HTML HTML HTML HTML
Attachment/graphics Text markup none none none Microsoft Word 2003 document Microsoft Word 2007 document Microsoft Excel 2003 document Microsoft Excel 2007 document JPG graphic file BMP graphic image No Yes No Yes Yes Yes Yes No Yes
Size (KB) 2 4 4 38 18 18 13 44 40
Text
No
25
40
HTML
Microsoft Yes PowerPoint 2007 file Microsoft PowerPoint 2007 file Microsoft Word 2003 document Microsoft Word 2007 document Yes Yes Yes
50
30
20 10 10
Characteristics of the email messages that were created by the BlackBerry Performance Engineering Resource Kit
97
Workload details
Attachment/graphics % none 77 1 attachment chosen in 23 the following weightings: 60% 69.5 KB JPG 35% 103 KB JPG
98
Workload details
Active Delete 1 per user per day Create 4 per user per day Modify 1 per user per day
Delete 1 per user per day 115.2 Pushes per user per day
Arrival driven (not polled) Process all attachments 10% Accept 5% Decline 5% Tentative 10% Delegate (Forward)
99
Workload facet synchronization data generation (BlackBerry device to BlackBerry Enterprise Server)
Active 10 updates per user per day 80% mail server data: tasks, memos, email message filters, email message settings 10% BlackBerry device management
10% Backup 1 per user per day 50% subject searches 50% body searches
0.5 per user per day 0.5 per user per day 2 per user per day
100
Type
Components Messaging servers each assigned 1-2 TB volume and 1-1 TB volume, one from disk group 1 and another from disk group 2; configured as a single 3 TB spanned NTFS file system using Windows 2003 disk management (used for Microsoft Exchange mail stores)
Drivers
101
BlackBerry Enterprise Server performance on VMware ESX 3.5 and VMware vSphere 4.0
BlackBerry Enterprise Server performance on VMware ESX 3.5 and VMware vSphere 4.0
Overview: Performance on virtual machines
Tests were run for BlackBerry Enterprise Server version 5.0 for Microsoft Exchange on physical hardware and on virtual machines that were running on the same hardware using VMware ESX 3.5 and VMware vSphere 4.0. The BlackBerry Enterprise Server for Microsoft Exchange in the VMware ESX 3.5 environment or VMware vSphere 4.0 environment did not cause any problems. Results were consistent and, with the exception of the following points, close to the results from the tests that were run on the server running only the native environment. For medium workload tests, running BlackBerry Enterprise Server for Microsoft Exchange in VMware ESX or VMware vSphere increased CPU usage considerably. For Windows Server 2003 (32-bit), relative CPU utilization increased by 55% in VMware ESX 3.5 compared to the native environment. For Windows Server 2008 (64-bit), relative CPU utilization increased by 42% in VMware ESX 3.5 compared to the native environment. For Windows Server 2008 (64-bit), relative CPU utilization increased by 12% in VMware vSphere 4.0 running on an Intel Nehalem family server (E5540 processors) compared to the native environment. The throughput was similar for all of the test workloads and sequences. Most other measured items were either comparable or differences occurred in relatively low usage resources where any variance seems large (such as disk transfers/second) so the differences are not a concern.
Testing conditions
Environment
BlackBerry Enterprise Server and VMware ESX 3.5 Type Components Hardware HP ProLiant DL460c G1 with the following features: Intel Xeon Processor 5150 with a dual core at 2.67 GHz 4 GB memory 2 x 36 GB 15K SAS drives, RAID 1 2 virtual CPUs 3 GB RAM
Virtual machine
102
Testing conditions
Type
Components Approximately 20 GB disk space Generic flexible NIC and LSI Logic disk drivers Windows Server 2003 SP2 (32-bit) or Windows Server 2008 (64-bit) BlackBerry Enterprise Server version 5.0 VMware ESX 3.5.0 build 143128
Software
BlackBerry Enterprise Server and VMware vSphere 4.0 Type Components Hardware HP ProLiant BL460c G6 with the following features: Two Intel Xeon E5540 processors with a quad core at 2.3 GHz 64 GB memory 2 x 73 GB 15K SAS drives, RAID 1 Hyperthreading turned off 8 virtual CPUs 20 GB RAM Approximately 60 GB disk space Generic flexible NIC and LSI Logic disk drivers Windows Server 2008 SP1 (64-bit) BlackBerry Enterprise Server version 5.0 VMware vSphere 4.0
Virtual machine
Software
Components HP ProLiant BL460c with the following features: Intel Xeon Processor 5150 with a dual core at 2.67 GHz 4 GB memory 2 x 36 GB 15K SAS drives, RAID 1 Windows Server 2003 SP2 (32-bit) Microsoft SQL Server 2005
Software
103
Components HP ProLiant DL380 G5 with the following features: Intel Xeon Processor 5150 with a dual core at 2.67 GHz 8 GB memory 8 x 147 GB 10K SAS drives, RAID 0 Windows Server 2003 Standard x64 SP2 Microsoft Exchange server 2007 SP1
Software
Test details
The messaging server sent approximately 240 email messages per user per day using a combination of tools to simulate the messaging server clients and BlackBerry devices that are associated with a BlackBerry Enterprise Server. The tests were run with 2000 users. Three sets of tests were run. The first set of tests used the Windows Server 2003 SP2 32-bit operating system and VMware ESX 3.5 on Intel Xeon 5150 processors. The second set of tests used the Windows Server 2008 64-bit operating system and VMware ESX 3.5 on Intel Xeon 5150 processors. The third set of tests used Windows Server 2008 (64-bit) and VMware vSphere 4.0 on Intel Xeon E5540 processors. The first test in each set was performed on physical hardware running BlackBerry Enterprise Server version 5.0. For the second test in each set, VMware ESX or VMware vSphere was installed on the hardware, the machine BIOS was configured for virtualization support, and was configured for a multi-CPU virtual machine for the BlackBerry Enterprise Server. For the Intel Xeon 5540 processors, the Extended Page Tables feature was enabled. In all test sequences, the number of virtual CPUs was configured to be equal to the number of physical CPU cores (2 for the tests run with a single Intel Xeon 5150 processor and 8 for the Intel Nehalem tests that were run with two Intel Xeon 5540 processors). For the VMware vSphere 4.0 test sequences, hyperthreading was turned off to make sure that the physical CPU cores and virtual CPUs matched. For all of the VMware tests, the current VMware flexible NIC driver and the generic LSI Logic disk driver were used. Resource usage data was collected using the Windows Performance Monitor and the VMware esxtop tool. It is a best practice to use the VMware esxtop tool to collect data because the tool avoids timing issues in the guest machine. The CPU utilization as reported by both tools was very similar because only one guest virtual machine was running on each physical server.
104
BlackBerry Enterprise Server measurements on Windows Server 2003 SP2 (32-bit) BlackBerry BlackBerry Enterprise Server Enterprise Server on VMware ESX Performance counter on physical 3.5 (Windows hardware Performance Monitor) % Processor time Committed bytes in use (MB) Disk % busy (from Disk % idle) Disk transfers/second Network bytes/second (Mbps) Messages received/minute Messages sent/minute Pending queue Standard message response time (seconds) Rescan message response time (seconds) 38.9 2586 12.7 25.5 9.80 249 39 3.8 3.1 613.4 60.7 2536 13.8 32.1 9.83 256 39 5.4 2.9 598.1
BlackBerry Enterprise Server % change for on VMware ESX performance 3.5 (VMware counter esxtop tool) 61.8 55.2 -1.9 8.4 25.7 0.3 1.3 0 n/a -6.3 -2.5
For the tests that used Windows Server 2003, the largest difference was that the CPU resource usage was 55% higher in the tests that included VMware ESX than in the tests that did not include VMware ESX (60.7% in comparison to 38.9%). The CPU usage with VMware ESX was very close to the Windows Performance Monitor result (61.8% in comparison to 60.3%). Most other measured items were either comparable or differences occurred in relatively low usage resources where any variance between runs seemed large (such as disk reads per second) so the differences are not a concern. The workload throughput was typically equivalent whether the sequence was run directly on the physical hardware or in VMware ESX. BlackBerry Enterprise Server measurements on Windows Server 2008 (64-bit) with VMware ESX 3.5 BlackBerry BlackBerry BlackBerry Enterprise Server Enterprise Server Enterprise Server on VMware ESX Performance counter on VMware ESX % change on physical 3.5 (Windows 3.5 (VMware hardware Performance esxtop tool) Monitor) % Processor time Committed bytes in use (MB) 42.8 3511 60.5 3483 64.4 42.0 -0.8
105
Performance counter
BlackBerry BlackBerry Enterprise Server Enterprise Server on VMware ESX on physical 3.5 (Windows hardware Performance Monitor) 7.0 16.2 9.88 2.4 622.6 9.7 20.0 9.73 4.1 579.7
BlackBerry Enterprise Server on VMware ESX % change 3.5 (VMware esxtop tool) 39.2 23.9 -1.5 69.5 -6.9
Disk % busy (from Disk % idle) Disk transfers/second Network bytes/second (Mbps) Standard message response time (seconds) Rescan message response time (seconds)
For the tests that included Windows Server 2008, the largest difference was that the CPU resource usage was still 42% higher when VMware ESX was used than when it was not used (60.5% in comparison to 42.8%). The CPU usage with VMware ESX was comparable to the CPU usage recorded by the Windows Performance Monitor (64.4% usage in comparison to 60.5% usage). Most other measures were either comparable or differences occurred in relatively low usage resources where any variation between runs seemed large (such as disk reads per second) so the differences are not a concern. BlackBerry Enterprise Server measurements on Windows Server 2008 (64-bit) with VMware vSphere version 4.0 BlackBerry BlackBerry Enterprise Server BlackBerry Enterprise Server on VMware Enterprise Server on VMware Performance counter vSphere 4.0 Relative % change on physical vSphere 4.0 (Windows hardware (VMware esxtop Performance tool) Monitor) % Processor time Disk % busy (from Disk % idle) Disk transfers/second Network bytes/second (Mbps) 11.0 6.4 17.72 10.19 12.4 5.9 15.77 9.66 12.4 -7.5 -11.0 -5.2
From these results, the largest difference was that the CPU virtualization overhead, while still higher with VMware vSphere software, dropped substantially, from 42.0% to 12.4%. Most other measures were either similar or were relatively low usage resources, where any variance between runs could appear to be a large difference but was not a concern. Note that certain BlackBerry Enterprise Server versions are not supported on Windows Server 2008 yet.
106
Conclusions
From these results we cannot state whether the improved performance comes from additional hardware support for virtualization (the extended page tables feature), or from improvements in VMware vSphere 4.0. Other information not listed here suggests that the bulk of the improvement comes from additional hardware support in the Intel Nehalem processors, which VMware vSphere 4.0 uses. The workload throughput was typically equivalent whether the sequence was run directly on the physical hardware or under VMware ESX or VMware vSphere . The variance in the statistics for the calculated message response time are not clear enough to make any conclusions about the cause of the difference.
Conclusions
Overall, the results from both Windows Server 2003 SP2 32-bit and Windows Server 2008 64-bit appeared to be consistent whether the BlackBerry Enterprise Server was running on the native operating system or in VMware software. The main difference that was observed was the increased CPU utilization that occurred under VMware. As long as your capacity planning considers the increased CPU utilization, there should be no problem running BlackBerry Enterprise Server for Microsoft Exchange under VMware ESX 3.5 or VMware vSphere 4.0.
107
How the performance of the database server impacts the BlackBerry Mail Store Service
The database server hosts the BlackBerry Configuration Database that the BlackBerry Mail Store Service uses to store contact information in. If the database server in your organization's environment is not performing as you expect, the performance of the database servers might impact how fast the BlackBerry Mail Store Service can write contact information to the BlackBerry Configuration Database. A typical entry in the MsAddresses table in the BlackBerry Configuration Database is approximately 300 bytes in size. The MsAddresses table contains two copies of the contact list so that you can manage user accounts. If more than two copies exist, the BlackBerry Mail Store Service uses a stored procedure to delete the extra copies nightly. The stored procedure deletes 3000 rows during each procedure call with a delay of 5 seconds between procedure calls. For example, if an environment includes 10,000 user accounts, the MsAddresses table contains contact information that is approximately 6 MBs in size. Table sizes might be larger depending on table whitespace and the internal storage structure of SQL.
How the performance of the messaging server impacts the BlackBerry Mail Store Service
If the messaging servers in your organization's environment are not performing as you expect, the performance of the messaging servers might impact how fast the BlackBerry Mail Store Service can search and receive contact information. If you configure the BlackBerry Enterprise Server to use LDAP to search for contact information in a Microsoft Exchange environment, the performance of the global catalog server impacts how fast the BlackBerry Mail Store Service can search and receive contact information. To optimize the performance of the BlackBerry Mail Store Service, you can consider permitting only the BlackBerry Mail Store Service that is located in the closest physical proximity to the BlackBerry Configuration Database to update the contact list.
108
2. 3. 4. 5.
Click Stop. In the Start parameters field, type -o=#<objects> -t=<seconds>. Click Start. Click OK.
109
Database introduction
Database introduction
Overview: Upgrading the BlackBerry Configuration Database
If you upgrade to BlackBerry Enterprise Server version 5.0, new database tables and features are added to the BlackBerry Configuration Database that might impact the overall performance of the BlackBerry Enterprise Server. You can control more throttling and scheduling features in BlackBerry Enterprise Server version 5.0 than you could in previous versions of the BlackBerry Enterprise Server. You can estimate the time and memory space that you require to upgrade to BlackBerry Enterprise Server version 5.0 based on the results of a simulation that Research In Motion conducted in a test environment. The simulation environment included the following items: a customer's BlackBerry Configuration Database that was associated with approximately 30,000 users a BlackBerry Configuration Database that was associated with approximately 2000 users simulation data that was added to the BlackBerry Configuration Database to measure potential areas of impact The results of the simulation are based on test scenarios and might differ depending on the type of hardware that the BlackBerry Configuration Database runs on.
Database contents
Objects that are located in the BlackBerry Configuration Database
The following table shows the number of objects that are located in BlackBerry Configuration Database version 5.0: Object type BlackBerry Configuration Database tables Foreign Key constraints Check constraints Stored procedures Views Triggers BlackBerry Configuration Database version 4.1 SP4 95 69 27 120 33 134 BlackBerry Configuration Database version 4.1 SP6 101 76 30 99 37 110 BlackBerry Configuration Database version 5.0 222 196 33 199 116 139
110
Database contents
111
Database contents
BASServiceInstances BASServices BASTraits DispatcherInstance HandheldAppControlPolicy HealthScoreMap HealthScoreMapDefaults HealthStatus MbCalReconcile MbMailReconcile MDSServiceConfigurations MDSServiceConfigurationSets Relation ServerCapabilitiesALP ServerCapabilitiesCICAL ServerCapabilitiesCMIME ServerComponentInstance ServerComponentType ServerConnectionVtemp ServerInstance ServerInstanceVtemp SyncDeviceConfigData SyncFolderList SyncFolderListServerState SyncFolderUserList UserSync ServiceTable
BASGroupRoles BASGroups BASIT-Policies BASLocaleStrings BASNetworkShares BASNotificationEventFilters BASNotificationEventFilterValues BASNotificationEventRegistrations BASOrganizations BASOSBundleCarrierIds BASOSBundleNetworkShares BASOSBundles BASOSConfigurationBundles BASOSConfigurations BASRoleCapabilities BASRoleCapabilityScopeInstances BASRoles BASUserAuthenticators BASUserDeviceAttributes BASUserDeviceConfigurations BASUserRoles BASUsers BASVersionColumns BASWLANConfigurations MsAddresses MsDomains
BASReconciliationProcessingPendingDa ta BASServiceInstanceData BASServiceInstanceRelationshipMetaDa ta BASSoftwareConfigurationApplications BASSoftwareConfigurations BASTimerDefinitionInitialStartDateTime s BASTimerDefinitionNodeStatuses BASTimerDefinitions BASTimerHandles BASTimerInitialStartDateTimes BASTimers BASTraitOverflowValues BASUserApplicationACPModuleReconci liations BASUserApplicationModuleReconciliati ons BASUserApplicationNonReconciliations BASUserApplicationNonReconciliationS ubReasonParameters BASUserApplicationNonReconciliationS ubReasons BASUserApplicationReconciliations BASUserReconciliationLanguages BASUserUAMReconciliations BMSAConfigurations BMSUConfigurations DBNSIndex MDSServiceConfigurationSetConfigurat ions ServerDBVersionAddOn ServiceConfig
112
Time and memory requirements for upgrading the BlackBerry Configuration Database
Time and memory requirements for upgrading the BlackBerry Configuration Database
The size of the BlackBerry Configuration Database does not increase significantly during the BlackBerry Enterprise Server upgrade process even though a large number of database tables have been added to the BlackBerry Configuration Database version 5.0. In the simulation, approximately 25 minutes were required to upgrade BlackBerry Configuration Database version 4.1 SP4 that was associated with approximately 30,000 users to BlackBerry Configuration Database version 5.0. The BlackBerry Configuration Database that was associated with 30,000 users used approximately 120 MB of storage space. Master tables data and transactional data used the additional storage space. Although the maximum permitted record space for each user is 4850 KB, an analysis of the BlackBerry Configuration Database that was used in the simulation showed that the average amount of record space that a typical user required was 400 KB. For an environment that included 30,000 users, the BlackBerry Configuration Database used approximately 12 GB in user-related record space. The BlackBerry Configuration Database required an additional 10% storage space for operational data after the upgrade. The operational data is a combination of user configuration data and synchronization data that the BlackBerry Enterprise Server requires. The MSAddresses table is a database table that is populated after you upgrade to BlackBerry Enterprise Server version 5.0. The MSAddresses table contains the user lists and distribution lists that are located in your organization's user directory. Record data in the MSAddresses table uses approximately 1.043 KB of storage space. If a user directory contains 100,000 items, the storage space for the table is approximately 100 MB.
113
114
115
BASTraits BASUsers ITAdminQueue IT-Policy 2 IT-Policy Template2 JBM_MSG JBM_MSG_REF ServerConfigHistory SyncDeviceMgmt SyncDeviceMgmtSummary UserConfig BASApplications BASApplicationDependencies BASApplicationModuleDependencies BASApplicationModules BASJobTaskDependencies BASJobThrottlingJobData BASReconciliationPostProcessingData BASReconciliationProcessingPending BASReconciliationProcessingPendingData BASSoftwareConfigurationApplications BASSoftwareConfigurations BASUserApplicationModuleReconciliations BASUserApplicationNonReconciliations BASUserApplicationReconciliations BASUserUAMReconciliations
116
The BlackBerry Policy Service reads and updates the ITAdminqueue table. The BlackBerry Policy Service uses the ITAdminqueue table to determine the amount of processing that is required to assign IT policies, and updates the status of the tasks that are performed for a user. The ITAdminqueue table grows to some extent, but the records are updated or deleted so that they can be reinserted when an action is repeated, which maintains the required table size. The ITAdminqueue table can contain approximately 1.6 KB of data for each user at one time. For 30,000 users, the ITAdminqueue table can be a total of 48 MB in size. Indexes for the BlackBerry Configuration Database are rebuilt through a stored procedure that starts with a BlackBerry Administration Service timer function. The BlackBerry Administration Service polls the ServerConfigHistory table in the BlackBerry Configuration Database to check for completed tasks that were performed by the BlackBerry Enterprise Server services. When tasks are complete, the BlackBerry Administration Service marks each task as complete in the BASJobTasks table and marks the whole job as complete when all of the tasks that belong to the job are complete. In the simulation, an IT policy that was sent to 2000 users using the default throttling parameters used approximately 30% CPU usage for 20 minutes.
117
Publishing applications
In the simulation, a software configuration was assigned to 2000 user accounts. When the BlackBerry Enterprise Server sent an application to BlackBerry devices, the database CPU usage was approximately 30% for 40 minutes and the disc transfer rate was 140 IOPS. For more information about assigning software configurations to user accounts, see the BlackBerry Enterprise Server Administration Guide.
Publishing applications
When you add an application to a software configuration and you configure the application to be allowed on BlackBerry devices, the application is stored in the BlackBerry Configuration Database in the BASApplications table and its subsidiary tables. The tables do not grow significantly when you store an application because applications are not typically large. If you publish applications, they are stored on a disc share. If there is a version conflict or applications do not appear in the disc share, you can republish the applications. Applications are stored on the disc share whenever you send the applications to a BlackBerry device. When an application is added as a valid application it gets stored in the database in the BASApplications and its subsidiary tables. In the simulation, several applications of different sizes were published and sent to BlackBerry devices. The database tables that were associated with the applications had a total database footprint of 360 KB. As the version variance for the applications increased and the number of applications that were published increased, the total footprint of the database tables was between 10 MB and 15 MB in size.
Processes in the BlackBerry Configuration Database that the BlackBerry Administration Service controls
In BlackBerry Enterprise Server version 5.0, the jobs that were located in the BlackBerry Configuration Database that ran through the SQLServerJobs feature previously are now controlled by the BlackBerry Administration Service timers. The following processes are run by the BlackBerry Administration Service timers: Stored procedure that is Description engaged by the BlackBerry Administration Service timers RemoveOldHistoryRows This timer cleans up history rows in the ServerConfigHistory table and retains them for 60 days by default. Default time in UTC Recurrence
06:00
Daily
118
Processes in the BlackBerry Configuration Database that the BlackBerry Administration Service controls
Stored procedure that is Description engaged by the BlackBerry Administration Service timers RemoveOldWorkQueue This timer removes old work queues and retains them for 15 days by default. This timer removes BlackBerry MDS push messages. This timer cleans up history rows in the DSUPRequest table and retains them for 15 days by default. This timer removes old BlackBerry MDS statistics. This timer defragments indexes every 15 days by default. This timer checks if the BlackBerry Configuration Database is close to its limit (for MSDE/Microsoft SQL Server Express Edition only). This table shrinks the database For MSDE/Express Customer. This table removes old MSAddresses and retains two copies for each BlackBerry Domain by default.
Recurrence
07:00
Weekly
RemoveMDSPushMsgs RemoveOldOTASL
08:33 06:44
Daily Weekly
ShrinkDatabase RemoveOldMSAddresses
09:00 07:45
Weekly Daily
119
Database maintenance
Database maintenance
Planning Microsoft SQL Server database maintenance for the BlackBerry Enterprise Server
To maintain optimal operating performance for the BlackBerry Enterprise Server, you must perform maintenance regularly on the Microsoft SQL Server databases. Microsoft SQL Server databases maintain indexes that update changes in the database tables. The indexes can become fragmented over time and extensively fragmented indexes can degrade query performance and cause applications to respond slowly. You must maintain accurate and up-to-date database statistics for optimal query performance. You should develop an appropriate maintenance schedule for your organization's Microsoft SQL Server databases based on the size, complexity, and recovery requirements of your organization's BlackBerry Domain. To create an effective maintenance schedule, you should consider the following factors: index fragmentation database statistics transaction log growth
Determining fragmentation
The following is an example of a query for Microsoft SQL Server 2000 that you can use to determine how much fragmentation exists in all indexes:
120
Planning Microsoft SQL Server database maintenance for the BlackBerry Enterprise Server
DBCC SHOWCONFIG WITH ALL_INDEXES The results of Scan Density (which is the ratio of extent changes) and Logical Scan Fragmentation (which is the percentage of out-of-order pages that the scan of the leaf pages of an index returns) provide the extent of index fragmentation. You can ignore the results if the Total Pages Scanned is less than 1000 pages because fragmentation is minimal in this situation. If the results of the query do not meet the following requirements, you must defragment the indexes: Scan Density is approximately 100% Logical Scan Fragmentation is less than 10% The following is an example of a query in Microsoft SQL Server 2005 that you can use to determine how much fragmentation occurred, as a percentage, across all indexes:
SELECT DISTINCT I.[name] AS [IndexName],sch.[name] AS [Schema],o.[name] AS [Object], index_level, index_type_desc, avg_fragmentation_in_percent, page_count FROM sys.dm_db_index_physical_stats(db_id(), null, null, null, 'DETAILED') AS ips INNER JOIN sys.indexes AS i ON i.[object_id] = ips.[object_id] and i.index_id = ips.index_id INNER JOIN sys.objects AS o ON o.[object_id] = ips.[object_id] INNER JOIN sys.schemas AS sch ON sch.schema_id = o.schema_id WHERE (i.name IS NOT null) AND page_count > 1000
Offline maintenance
You can perform offline maintenance by using the following reindex commands, which lock the table that they run against and make the table unavailable temporarily. Depending on the version of the Microsoft SQL Server that is a part of your organization's BlackBerry Domain, you can use one of the following SQL Server statements: DBCC DBREINDEX (in Microsoft SQL Server 2000) ALTER INDEX REBUILD (in Microsoft SQL Server 2005) You can run ALTER INDEX REBUILD while the BlackBerry Enterprise Server is online. If a table that is being reindexed contains LOB data, the reindex operation fails. Below is an example of an online query in Microsoft SQL Server 2005 that you can use to reindex all tables using the ALTER INDEX REBUILD statement:
DECLARE @Database VARCHAR(255) DECLARE @Table VARCHAR(255) DECLARE @cmd NVARCHAR(500) DECLARE DatabaseCursor CURSOR FOR SELECT name FROM master.dbo.sysdatabases WHERE name =
'<database_name>'
121
ORDER BY 1 OPEN DatabaseCursor FETCH NEXT FROM DatabaseCursor INTO @Database WHILE @@FETCH_STATUS = 0 BEGIN SET @cmd = 'DECLARE TableCursor CURSOR FOR SELECT table_catalog + ''.'' + table_schema + ''.'' + table_name as tableName FROM ' + @Database + '.INFORMATION_SCHEMA.TABLES WHERE table_type = ''BASE TABLE''' -- create table cursor EXEC (@cmd) OPEN TableCursor FETCH NEXT FROM TableCursor INTO @Table WHILE @@FETCH_STATUS = 0 BEGIN SET @cmd = 'ALTER INDEX ALL ON ' + @Table + ' REBUILD ' EXEC (@cmd) FETCH NEXT FROM TableCursor INTO @Table END CLOSE TableCursor DEALLOCATE TableCursor FETCH NEXT FROM DatabaseCursor INTO @Database END CLOSE DatabaseCursor DEALLOCATE DatabaseCursor
Online maintenance
The following reindex commands skip pages that are locked, which can cause the reindex operation results to vary. Depending on the version of the Microsoft SQL Server that is a part of your organization's BlackBerry Domain, you can use one of the following SQL Server statements: DBCC INDEXDEFRAG (Microsoft SQL Server 2000) ALTER INDEX REORGANIZE (Microsoft SQL Server 2005) Do not perform the reindex operation on indexes that are fragmented more than 30%. Instead, use the DBCC DBREINDEX (in Microsoft SQL Server 2000) or ALTER INDEX REBUILD (in Microsoft SQL Server 2005) SQL statement. Typically, the DBCC DBREINDEX statement takes less time to complete than the DBCC INDEXDEFRAG statement. You must update the database statistics manually after the reindex operation completes. You can use the following statement in Microsoft SQL Server 2000 and Microsoft SQL Server 2005: sp_updatestats. For more information about reorganizing and rebuilding indexes, visit http://msdn.microsoft.com/en-us/library/ ms189858.aspx.
122
For more information about best practices for index defragmentation, visit http://www.microsoft.com/technet/prodtechnol/ sql/2000/maintain/ss2kidbp.mspx.
123
Glossary
Glossary
API application programming interface BlackBerry MDS BlackBerry Mobile Data System DBCC Database Console Command ESE Extensible Storage Engine EVA enterprise virtual array HTML Hypertext Markup Language HTTP Hypertext Transfer Protocol I/O input/output IOPS input/output operations per second LOB large object MPIO multipath input/output NIC network interface card NTFS New Technology File System RAID redundant array of independent (or inexpensive) disks
124
Glossary
SAN subject alternative name SQL Structured Query Language XML Extensible Markup Language
125
Provide feedback
Provide feedback
To provide feedback on this deliverable, visit www.blackberry.com/docsfeedback.
10
126
Legal notice
Legal notice
11
2010 Research In Motion Limited. All rights reserved. BlackBerry, RIM, Research In Motion, SureType, SurePress and related trademarks, names, and logos are the property of Research In Motion Limited and are registered and/or used in the U.S. and countries around the world. Microsoft, Excel, PowerPoint, SQL Server, Windows, and Windows Server are trademarks of Microsoft Corporation. IBM, Domino, and Lotus are trademarks of International Business Machines Corporation. Intel and Xeon are trademarks of Intel Corporation. HP is a trademark of Hewlett-Packard Development Company, L.P. QLogic and QLA are trademarks of QLogic Corporation. VMware , VMware vSphere, and VMware ESX are trademarks of VMware, Inc. Java is a trademark of Sun Microsystems, Inc. All other trademarks are the property of their respective owners. This documentation including all documentation incorporated by reference herein such as documentation provided or made available at www.blackberry.com/go/docs is provided or made accessible "AS IS" and "AS AVAILABLE" and without condition, endorsement, guarantee, representation, or warranty of any kind by Research In Motion Limited and its affiliated companies ("RIM") and RIM assumes no responsibility for any typographical, technical, or other inaccuracies, errors, or omissions in this documentation. In order to protect RIM proprietary and confidential information and/or trade secrets, this documentation may describe some aspects of RIM technology in generalized terms. RIM reserves the right to periodically change information that is contained in this documentation; however, RIM makes no commitment to provide any such changes, updates, enhancements, or other additions to this documentation to you in a timely manner or at all. This documentation might contain references to third-party sources of information, hardware or software, products or services including components and content such as content protected by copyright and/or third-party web sites (collectively the "Third Party Products and Services"). RIM does not control, and is not responsible for, any Third Party Products and Services including, without limitation the content, accuracy, copyright compliance, compatibility, performance, trustworthiness, legality, decency, links, or any other aspect of Third Party Products and Services. The inclusion of a reference to Third Party Products and Services in this documentation does not imply endorsement by RIM of the Third Party Products and Services or the third party in any way. EXCEPT TO THE EXTENT SPECIFICALLY PROHIBITED BY APPLICABLE LAW IN YOUR JURISDICTION, ALL CONDITIONS, ENDORSEMENTS, GUARANTEES, REPRESENTATIONS, OR WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY CONDITIONS, ENDORSEMENTS, GUARANTEES, REPRESENTATIONS OR WARRANTIES OF DURABILITY, FITNESS FOR A PARTICULAR PURPOSE OR USE, MERCHANTABILITY, MERCHANTABLE QUALITY, NONINFRINGEMENT, SATISFACTORY QUALITY, OR TITLE, OR ARISING FROM A STATUTE OR CUSTOM OR A COURSE OF DEALING OR USAGE OF TRADE, OR RELATED TO THE DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NON-PERFORMANCE OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES REFERENCED HEREIN, ARE HEREBY EXCLUDED. YOU MAY ALSO HAVE OTHER RIGHTS THAT VARY BY STATE OR PROVINCE. SOME JURISDICTIONS MAY NOT ALLOW THE EXCLUSION OR LIMITATION OF IMPLIED WARRANTIES AND CONDITIONS. TO THE EXTENT PERMITTED BY LAW, ANY IMPLIED WARRANTIES OR CONDITIONS RELATING TO THE DOCUMENTATION TO THE EXTENT THEY CANNOT BE EXCLUDED AS SET OUT ABOVE, BUT CAN BE LIMITED, ARE HEREBY LIMITED TO NINETY (90) DAYS FROM THE DATE YOU FIRST ACQUIRED THE DOCUMENTATION OR THE ITEM THAT IS THE SUBJECT OF THE CLAIM. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, IN NO EVENT SHALL RIM BE LIABLE FOR ANY TYPE OF DAMAGES RELATED TO THIS DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NONPERFORMANCE OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES REFERENCED
127
Legal notice
HEREIN INCLUDING WITHOUT LIMITATION ANY OF THE FOLLOWING DAMAGES: DIRECT, CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, INDIRECT, SPECIAL, PUNITIVE, OR AGGRAVATED DAMAGES, DAMAGES FOR LOSS OF PROFITS OR REVENUES, FAILURE TO REALIZE ANY EXPECTED SAVINGS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, LOSS OF BUSINESS OPPORTUNITY, OR CORRUPTION OR LOSS OF DATA, FAILURES TO TRANSMIT OR RECEIVE ANY DATA, PROBLEMS ASSOCIATED WITH ANY APPLICATIONS USED IN CONJUNCTION WITH RIM PRODUCTS OR SERVICES, DOWNTIME COSTS, LOSS OF THE USE OF RIM PRODUCTS OR SERVICES OR ANY PORTION THEREOF OR OF ANY AIRTIME SERVICES, COST OF SUBSTITUTE GOODS, COSTS OF COVER, FACILITIES OR SERVICES, COST OF CAPITAL, OR OTHER SIMILAR PECUNIARY LOSSES, WHETHER OR NOT SUCH DAMAGES WERE FORESEEN OR UNFORESEEN, AND EVEN IF RIM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, RIM SHALL HAVE NO OTHER OBLIGATION, DUTY, OR LIABILITY WHATSOEVER IN CONTRACT, TORT, OR OTHERWISE TO YOU INCLUDING ANY LIABILITY FOR NEGLIGENCE OR STRICT LIABILITY. THE LIMITATIONS, EXCLUSIONS, AND DISCLAIMERS HEREIN SHALL APPLY: (A) IRRESPECTIVE OF THE NATURE OF THE CAUSE OF ACTION, DEMAND, OR ACTION BY YOU INCLUDING BUT NOT LIMITED TO BREACH OF CONTRACT, NEGLIGENCE, TORT, STRICT LIABILITY OR ANY OTHER LEGAL THEORY AND SHALL SURVIVE A FUNDAMENTAL BREACH OR BREACHES OR THE FAILURE OF THE ESSENTIAL PURPOSE OF THIS AGREEMENT OR OF ANY REMEDY CONTAINED HEREIN; AND (B) TO RIM AND ITS AFFILIATED COMPANIES, THEIR SUCCESSORS, ASSIGNS, AGENTS, SUPPLIERS (INCLUDING AIRTIME SERVICE PROVIDERS), AUTHORIZED RIM DISTRIBUTORS (ALSO INCLUDING AIRTIME SERVICE PROVIDERS) AND THEIR RESPECTIVE DIRECTORS, EMPLOYEES, AND INDEPENDENT CONTRACTORS. IN ADDITION TO THE LIMITATIONS AND EXCLUSIONS SET OUT ABOVE, IN NO EVENT SHALL ANY DIRECTOR, EMPLOYEE, AGENT, DISTRIBUTOR, SUPPLIER, INDEPENDENT CONTRACTOR OF RIM OR ANY AFFILIATES OF RIM HAVE ANY LIABILITY ARISING FROM OR RELATED TO THE DOCUMENTATION. Prior to subscribing for, installing, or using any Third Party Products and Services, it is your responsibility to ensure that your airtime service provider has agreed to support all of their features. Some airtime service providers might not offer Internet browsing functionality with a subscription to the BlackBerry Internet Service. Check with your service provider for availability, roaming arrangements, service plans and features. Installation or use of Third Party Products and Services with RIM's products and services may require one or more patent, trademark, copyright, or other licenses in order to avoid infringement or violation of third party rights. You are solely responsible for determining whether to use Third Party Products and Services and if any third party licenses are required to do so. If required you are responsible for acquiring them. You should not install or use Third Party Products and Services until all necessary licenses have been acquired. Any Third Party Products and Services that are provided with RIM's products and services are provided as a convenience to you and are provided "AS IS" with no express or implied conditions, endorsements, guarantees, representations, or warranties of any kind by RIM and RIM assumes no liability whatsoever, in relation thereto. Your use of Third Party Products and Services shall be governed by and subject to you agreeing to the terms of separate licenses and other agreements applicable thereto with third parties, except to the extent expressly covered by a license or other agreement with RIM. Certain features outlined in this documentation require a minimum version of BlackBerry Enterprise Server, BlackBerry Desktop Software, and/or BlackBerry Device Software.
128
Legal notice
The terms of use of any RIM product or service are set out in a separate license or other agreement with RIM applicable thereto. NOTHING IN THIS DOCUMENTATION IS INTENDED TO SUPERSEDE ANY EXPRESS WRITTEN AGREEMENTS OR WARRANTIES PROVIDED BY RIM FOR PORTIONS OF ANY RIM PRODUCT OR SERVICE OTHER THAN THIS DOCUMENTATION. Certain features outlined in this documentation might require additional development or Third Party Products and Services for access to corporate applications. This product contains a modified version of HTML Tidy. Copyright 1998-2003 World Wide Web Consortium (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University). All Rights Reserved. This product includes software developed by the Apache Software Foundation (www.apache.org/) and/or is licensed pursuant to one of the licenses listed at (www.apache.org/licenses/). For more information, see the NOTICE.txt file included with the software. Research In Motion Limited 295 Phillip Street Waterloo, ON N2L 3W8 Canada Research In Motion UK Limited Centrum House 36 Station Road Egham, Surrey TW20 9LF United Kingdom Published in Canada
129