Planning Capacity for FijiNet

Based on the information we developed in earlier chapters about our sample ISP customer FijiNet, we model capacity planning by performing the following tasks:

For each component, we provide the customized formula we used to estimate capacity based on FijiNet’s requirements.

Estimate Software Capacity for FijiNet

Before planning for servers and network components, we perform capacity planning for software.

Refer to the following sections:

FijiNet Basic Services

We estimate the capacity for basic services FijiNet plans to offer for their initial deployment: email, web, news, and FTP.

Refer to the following sections:

FijiNet Email Service

We determine the email storage and memory needed for FijiNet, as shown in TABLE 5-40 and TABLE 5-41.

Table 5-40. FijiNet: Estimating Storage for Email Service
Variable Value Description
T 10,000 Total number of subscribers
Pact 40% Percentage of active email users
Save 25 KB Average email message size
Nrev 20 Average email messages received per user per day
Smsa T × Pact × Save × Nrev Average storage for active email users
Smsp 20% × Smsa Average storage for email queue
Smsm 5 MB Maximum email storage quota per subscriber
Smsq 20% × Smsm Maximum storage for email queue
Smss 8 MB Storage requirement for email software (sendmail, POP3, and IMAP4) and various plug-ins
Sms(proxy)= Smss = 8MB

Sms(relay)= Smsp + Smss = 405MB

Sms(mailstore)= Smsa + Smsp + Smss ≈ 2.4GB

Sms(maximum)= (T × Smsm) + Smsq + Smss ≈ 60GB

Table 5-41. FijiNet: Estimating Memory for Email Service
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrency
Pact 40% Percentage of active mail users
Ppop 90% Percentage of POP users
Pima 10% Percentage of IMAP users
Mmsi 1 MB Memory footprint per IMAP connection
Mmsp 200 KB Memory footprint per POP connection
Mmst 300 KB Memory footprint per SMTP connection
Mmsb 1 MB Memory requirement for email server
Mmp= T × Pcon × Pact × Ppop × Mmsp = 90MB

Mmi= T × Pcon × Pact × Pima × Mmsi = 50MB

Mmt= T × Pcon × Pact × Mmst = 150MB

Mms(proxy)= Mmp + Mmi + Mmsb = 141MB

Mms(relay)= Mmt + Mmsb = 151MB

Mms(mailstore)= Mmp + Mmi + Mmt + Mmsb ≈ 291MB

FijiNet Web Service

We determine the web storage and memory needed for FijiNet, as shown in TABLE 5-42 and TABLE 5-43.

With 5 Mbytes quota per subscriber for web storage, we calculate that the maximum storage required is 60 Gbytes. However, planning for this amount is not realistic, nor it is economical. We recommend that storage planning be based on active users who have web pages. For FijiNet, we use an ISP average usage for the percentage of active users with web pages, and the average web storage per user.

Table 5-42. FijiNet: Estimating Storage for Web Service
Variable Value Description
T 10,000 Total number of subscribers
Pact 25% Percentage of active users with web pages
Save 500 KB Average web storage size per user
Swsa T × Pact × Save Average storage for active users with web pages
Swsd 20% × Swsa Average storage for web cache
Swsw 5 MB Maximum web storage quota per subscriber
Swsc 20% (T × Swsw) Maximum storage for web cache
Swss 6 MB Storage requirement for web software and various plug-ins
Sws(average)= Swsa + Swsd + Swss ≈ 1.5GB Sws(maximum)= (T × Swsw) + Swsc + Swss ≈ 60GB

For FijiNet, the peak number of HTTP connections is assumed to be equal to the number of concurrent users (12.5 percent), which is 1,250 HTTP operations per second. Also, our memory calculation for FijiNet is based on our plan to use an Apache web server.

Note

Resident memory is the sum of private memory and shared memory. All web processes share the same shared memory segment. Additional web processes forked require private memory; however, they do not require additional shared memory.


Table 5-43. FijiNet: Estimating Memory for Web Service
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrency
Nweb 1 Number of web servers
Npar 1 Number of parent process
Npro 5 Number of child processes (fork/exec model)
Ncon T × Pcon Peak number of HTTP connections
Mwsc 10 KB Memory footprint per HTTP connection
Mwss 2 MB Memory footprint per child process (fork/exec model)
Mwm(fork)= (Nweb × (Npar+Npro) × Mwss) + (Ncon × Mwsc) = 24.5MB

FijiNet News Service

We determine the news storage and memory needed for FijiNet, as shown in TABLE 5-44 and TABLE 5-45. We base the calculation on one day of storage for news articles.

Note

If FijiNet wants to store news for more than one day, we would need to calculate the delta (rate of changes between expired and new articles) so that additional storage could be planned.


For FijiNet, there will be no downstream feeds, and there is only one upstream feed to FijiNet from a UseNet provider.

Memory footprint for news connection is similar to IMAP connection, where only message headers are downloaded. Message content is not downloaded unless specifically requested. Thus, we assume that approximately 1 Mbyte of memory is required per news connection. While this assumption might not be accurate, depending on the news server being used and the environment in question, it is sufficient for an initial estimate.

Table 5-44. FijiNet: Estimating Storage for News Service
Variable Value Description
Snsa 300 GB (as of May 2001) Storage requirement for daily news articles for a full feed
Snsh 10% × Snsa Storage requirement for news spooler, history, and index
Snss 25 MB Storage requirement for news software
Sns= Snsa+ Snsh+ Snss ≈ 330GB

Table 5-45. FijiNet: Estimating Memory for News Service
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrency
Pact 10% Percentage of active news users
Mnss 1 MB Memory footprint per news server
Nnco T × Pcon × Pact Peak number of news connection
Mnco 1 MB Memory footprint per news connection
Mnm= Mnss + (Nnco × Mnco) = 126MB

FijiNet FTP Service

We determine the FTP storage and memory needed for FijiNet, as shown in TABLE 5-46 and TABLE 5-47.

For FTP spool, there is no fixed amount that must be set. The amount depends upon an ISP’s environment. For FijiNet, we allocate approximately 15 percent of the average web storage (250 Mbytes) for FTP spool area. Depending on the environment, the FTP spool can be allocated to whatever amount is appropriate.

Table 5-46. FijiNet: Estimating Storage for FTP Service
Variable Value Description
Sfss 2 MB Storage requirement for WU-FTP software
Sfsu 250 MB Storage requirement for FTP spooler
Sfs= Sfss + Sfsu ≈ 252MB

We estimate each FTP process to be approximately 400 Kbytes. A new process is spawned for every FTP session. While FTP service must be made available for content uploads, the service usage is minor compared to other basic services. For FijiNet, we assume that 10 concurrent FTP sessions are sufficient. This number can be set to an amount appropriate to the environment.

Table 5-47. FijiNet: Estimating Memory for FTP Service
Variable Value Description
Mftp 400 KB Memory footprint per FTP process
Nftp 10 Number of concurrent FTP connections
Mfs= Mftp × Nftp = 4MB

FijiNet Infrastructure Services

We estimate the capacity needed for infrastructure services: DNS, RADIUS, LDAP, DHCP, and NTP.

Refer to the following sections:

FijiNet DNS Service

We determine the DNS storage and memory needed for FijiNet, as shown in TABLE 5-48 and TABLE 5-49.

Table 5-48. FijiNet: Estimating Storage for DNS Service
Variable Value Description
Sdns 29 MB Storage requirement for BIND/DNS software
Sdnd 1 MB Storage requirement for BIND/DNS zone databases
Sdn= Sdns + Sdnd = 30MB

Table 5-49. FijiNet: Estimating Memory for DNS Service
Variable Value Description
Mdns 3 MB Memory requirement for BIND v9 server
Mzon 1 KB Memory requirement for BIND v9 server
Mdn= Mdns + Mzon ≈ 3MB

FijiNet RADIUS Service

We determine the RADIUS storage and memory needed for FijiNet, as shown in TABLE 5-50 and TABLE 5-51.

On average, a RADIUS local database entry is approximately 1 Kbyte. Thus, the overall storage for RADIUS local database is negligible for FijiNet.

If a local database is maintained for RADIUS for authentication, approximately 10 Mbytes of storage is required for 10,000 users in addition to storage required for software.

For FijiNet, authentication is done by the directory server. Therefore, storage for RADIUS database is not required. However, some storage might be needed for the local database of system administration accounts. Note that storage for a local database of system administration accounts is negligible.

We estimate approximately 250 Mbytes for RADIUS logs initially. We recommend that FijiNet monitor RADIUS logs to determine the actual level of utilization.

Table 5-50. FijiNet: Estimating Storage for RADIUS Service
Variable Value Description
T 10,000 Total number of subscribers
Srse 1 KB Average size for a RADIUS database entry
Srsd T × Srse Storage requirement for RADIUS database
Srss 105 MB Storage requirement for Steel-Belted RADIUS/SPE software
Srsl 250 MB Storage requirement for RADIUS log
Srs = Srsd + Srss + Srsl = 365MB=

RADIUS does not utilize much memory; however, we advise that you adhere to the amount of memory recommended by a vendor. RADIUS does require storage for logs. How much storage is needed depends on how long logs are kept and the level of logging performed.

Based on a recommendation from Funk Software™, we estimate that 64 Mbytes of RAM is needed for RADIUS.

Table 5-51. FijiNet: Estimating Memory for RADIUS Service
Variable Value Description
Mrss 64 MB Memory requirement for RADIUS server
Mrs ≈ 64MB

FijiNet LDAP Service

We determine the directory storage and memory needed for FijiNet, as shown in TABLE 5-52 and TABLE 5-53.

Our memory estimate is based on the number of LDAP data interchange format (LDIF) entries in the database.

Table 5-52. FijiNet: Estimating Storage for Directory Service
Variable Value Description
T 10,000 Total number of subscribers
Sdse 10 KB Average size for a directory database entry
Sdsd T × Sdse Storage requirement for directory database
Sdss 2 GB Storage requirement for directory software
Sds= Sdsd + Sdss = 2.1GB

In general, memory calculation is based on the number of entries in the LDAP database. The following memory calculation for FijiNet is based on iPlanet recommendations.

  • For 10,000 to 250,000 entries, use 2 Gbytes of disk and 256 Mbytes of RAM.

  • For 250,000 to 1,000,000 entries, use 4 Gbytes of disk and 512 Mbytes of RAM.

  • For 1,000,000+ entries, use 8 Gbytes of disk and 1 Gbyte of RAM.

Roughly 256 Mbytes of RAM is required for FijiNet, so we plan 256 Mbytes to 1 Gbyte of RAM for best performance on their production system.

Table 5-53. FijiNet: Estimating Memory for Directory Service
Variable Value Description
T 10,000 Total number of subscribers
Mdss 256 MB Memory requirement for directory server
Mds= Mdss ≈ 256MB

For more information on LDAP, refer to Solaris and LDAP Naming Services - Deploying LDAP in the Enterprise, Tom Bialaski and Michael Haines, Sun Microsystems, Inc., 2001.

FijiNet DHCP Service

We determine the DHCP storage and memory needed for FijiNet, as shown in TABLE 5-54 and TABLE 5-55. On average, each DHCP entry in the database is approximately 1 Kbyte. On average, memory footprint for each DHCP lease is approximately 256 bytes.

Table 5-54. FijiNet: Estimating Storage for DHCP Service
Variable Value Description
T 10,000 Total number of subscribers
Sdhe 1 KB Average size for a DHCP database entry
Sdhd T × Sdhe Storage requirement for DHCP database
Sdhs 1 MB Storage requirement for DHCP software
Sdh= Sdhd + Sdhs ≈ 10MB

Table 5-55. FijiNet: Estimating Memory for DHCP Service
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrency
Ndhc T × Pcon Peak number of DHCP connections
Mdhl 220 bytes Memory footprint per DHCP lease
Mdhd Ndhc × Mdhl Memory requirement for DHCP leases
Mdhs 736 KB Memory requirement for DHCP server
Mdh= Mdhd+ Mdhs ≈ 1MB

FijiNet NTP Service

We determine the NTP storage and memory needed for FijiNet, as shown in TABLE 5-56 and TABLE 5-57.

There is no memory sizing available for NTP. The resident memory (sum of shared and private memory) is approximately 2128 Kbytes. The shared memory is 1272 Kbytes, and the private memory is 856 Kbytes. This memory estimate is based on NTP server running on Solaris 8 Operating Environment (Solaris 8 OE).

Table 5-56. FijiNet: Estimating Storage for NTP Service
Variable Value Description
Snts 2 MB Storage requirement for NTP software
Sns= Snts ≈ 2MB

Table 5-57. FijiNet: Estimating Memory for NTP Service
Variable Value Description
Mnts 2128 KB Memory footprint for NTP server
Mns= Mnts≈ 2MB

FijiNet Operation and Management Services

We estimate the capacity needed for operation and management services for backing up data, providing security via firewalls, and logging.

Refer to the following sections:

Note

Operation and management services are beyond the scope of this book. Many resources are available, such as OSS Essential: Support System Solutions for Service Providers, Kornel Terplan, John Wiley and Sons, Inc., 2001.


FijiNet Backup Service

We determine the backup storage and memory needed for FijiNet, as shown in TABLE 5-58 and TABLE 5-59.

For FijiNet, we estimate 1 Gbyte storage total for Solstice Backup software and indexes, with a 6 to 12 month browsing policy.

For memory, we estimate that approximately 256 Mbytes of RAM is required for backup software.

Table 5-58. FijiNet: Estimating Storage for Backup Service
Variable Value Description
Sbsi 900 MB Storage requirement for indexes
Sbss 75 MB Storage requirement for backup software
Sbs= Sbsi + Sbss≈ 1GB

Table 5-59. FijiNet: Estimating Memory for Backup Service
Variable Value Description
Mbsd 256 MB Memory requirement for backup server
Mbs= Mbsd = 256MB

FijiNet Firewall Service

We determine the firewall storage and memory needed for FijiNet, as shown in TABLE 5-60 and TABLE 5-61.

We estimate 1 Gbyte is needed for firewall log storage. The size of the firewall log depends on the type of logging and how much log is generated. We recommend that FijiNet monitor the storage for firewall and adjust it accordingly.

Table 5-60. FijiNet: Estimating Storage for Firewall Service
Variable Value Description
Sfws 0 MB Storage requirement for firewall software, objects, and policy
Sfwl 1 GB Storage requirement for firewall logs
Sfw= Sfws + Sfwl ≈ 1GB

Table 5-61. FijiNet: Estimating Memory for Firewall Service
Variable Value Description
Mfws 12 MB Memory requirement for firewall
Mfw= Mfws = 128MB

FijiNet Log Service

We determine the log storage and memory needed for FijiNet, as shown in TABLE 5-62 and TABLE 5-63.

For FijiNet, we estimate that approximately 250 Mbytes is required for spooling daily logs, and 750 Mbytes for archiving logs for 12 months. Logs older than 12 months are rotated and recycled.We recommend that storage for log archive be monitored and storage adjusted, where applicable.

The amount of storage required depends on the number of systems logged, how much logging is generated by each system, type of logs (normal or debug), and how long logs are kept.

Table 5-62. FijiNet: Estimating Storage for Log Service
Variable Value Description
Slss 250 MB Storage requirement for log spooler
Slsa 1 GB Storage requirement for log archive
Sls= Nlss × Slsa ≈ 1,25GB

Table 5-63. FijiNet: Estimating Memory for Log Service
Variable Value Description
Mlss 32 MB Memory requirement for log server
Mls= Mlss ≈ 32MB

FijiNet Operating Environment

We model the capacity planning for the file system layout for system disk, file system layout for data, and system disk storage. Refer to the following sections:

FijiNet Storage

We determine the capacity for the operating environment (OE), swap space, log archive, and applications, as shown in TABLE 5-64.

Our calculation shows that a system disk with a capacity of 6 Gbytes or more is required. For FijiNet, a 9-Gbyte disk (10,000 RPM) is sufficient for all system disks.

Table 5-64. FijiNet: Estimating Storage for System Disk
Variable Value Description
Soss 2.4 GB Storage requirement for OE
Sswp At least 2 × RAM Storage requirement for swap space
Sosl 2 GB Storage requirement for log archive
Sapp 1 GB Storage requirement for native and thirdparty applications
Sos= Soss + Sswp + Sosl + Sapp ≈ 6GB

FijiNet Filesystem Layout for System Disk

We plan the file system layout for the system disk, as shown in TABLE 5-65.

Table 5-65. Filesystem Layout for System Disk
Partition Filesystem Description
0 / Root partition
1 swap Swap partition
2  Reserved (entire disk)
3 to 7 (empty) Available for future use

For every system, we partition the system disk into two partitions: root and swap. We could partition /usr, /var, /export, and /opt as individual file systems. However, for better storage management and utilization, we use a single root file system and collapse everything under root. This approach has no negative impact on performance.

Note

If we want to use VxVM, we must reserve partitions 3 and 4 for public and private regions for VxVM database, to encapsulate the system disk. In addition, two cylinders must be reserved at the end of the disk. Most likely, we will use Solstice DiskSuite™ logical volume management, because it is part of Solaris 8 Operating Environment.


For system availability, we use two internal disks. For consistency and ease of administration, we use disks of the same size/type. One disk is the system disk and the other is a spare disk. For consistency, we partition both disks exactly the same. To better utilize the spare disk, we can configure the system to take advantage of the swap partition on the spare disk. Thus, the primary swap partition resides on the system disk and the secondary swap partition is on the spare disk.

FijiNet Filesystem Layout for Data

We plan the file system layout for the system disk, as shown in TABLE 5-66.

Table 5-66. Filesystem Layout for Data
Variable Value Description
/data See capacity planning section Data (MailStores, web contents, news articles, etc.)

It is important to separate data from the system disk, so that FijiNet can export and import data, for example, in case of system failure. Depending on FijiNet’s system and its purpose, /data file system can be created for data such as MailStore, web content, news articles, etc. For front-end systems such as web servers, no data resides on the system. Front-end servers only handle incoming transactions and interface with user requests. We can place /data on back-end servers on the content network.

We recommend that FijiNet configure /data file system with a logical volume, for example, Solstice DiskSuite, so that disk space can grow automatically. We would also configure RAID 0+1 (redundant array of independent disks, stripping and mirroring) to provide data protection against disk failure.

Estimate Server Capacity for FijiNet

After formulating the software capacity planning, we determine what kind of servers are appropriate for FijiNet, as shown in TABLE 5-67.

Table 5-67. FijiNet: Estimating Server Sizing
Type Size Specification
Front-end server Small Uniprocessor (1 CPU, < 1 GB RAM)
Back-end server Medium Multiprocessor (< 4 CPU, < 4 GB RAM)

Estimate Network Capacity for FijiNet

We estimate capacity planning for FijiNet’s infrastructure so that there is enough bandwidth to support local traffic loads, and that enough modems and high-speed trunks are available for Internet connectivity and dial-up access.

Refer to the following sections:

FijiNet Bandwidth

Using industry figures and FijiNet’s requirements, we determine the ports needed for bandwidth, as shown in TABLE 5-68.

Table 5-68. FijiNet: Estimating Network Bandwidth for Users
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrent users
Busr 2 Kbps Average network bandwidth consumption per user
Bthe 10 Mbps (10BaseT)

100 Mbps (100BaseT or FE)

1000 Mbps (1000BaseT or GE)
Theoretical network bandwidth
Bsat 40% × Bthe Network bandwidth saturation point
Bove 10% × Bthe Network bandwidth overhead
B(100BaseT)= (T × Pcon × Busr) + Bove = 12.5Mbps

FijiNet Modems and High-Speed Trunks

Using FijiNet’s projected subscriber base, we estimate the total number of modems to support concurrent users. From the modem calculation, we then estimate the number of high-speed trunks needed.

Refer to the following sections:

FijiNet Modems

We estimate that 1,250 modems are required initially for FijiNet’s architecture, as shown in TABLE 5-69.

Table 5-69. FijiNet: Estimating Modems for Dial-Up Access
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrent users
NM= T × Pcon = 1250

This result is from the assumption of 1:8 modem-to-user ratio.

FijiNet High-Speed Trunks

We determine the links needed for Internet connectivity and dial-up access, as shown in TABLE 5-70 and TABLE 5-71.

We estimate that 1.62xT1 is required for FijiNet’s Internet connectivity. Thus, two T1 interfaces are required. Only a single 10/100 Mbit/sec is required for LAN connection to the firewall. We recommend that FijiNet plan for two LAN ports, so that redundant routers and switches can be added later to provide higher availability. (The additional LAN port is necessary to facilitate redundant connections.)

Table 5-70. FijiNet: Estimating Links for Internet Connectivity
Variable Value Description
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrent users
Busr 2 Kbps Average bandwidth consumption per user
L T1=1.544 Mbps T3=44.736 Mbps Bandwidth supported per high-speed trunk


Table 5-71. FijiNet: Estimating Links for Dial-Up Access
Variable Value Estimation
T 10,000 Total number of subscribers
Pcon 12.5% Percentage of concurrent users
C 24 channels per T1 672 channels per CT3 Number of channels supported per high-speed trunk


FijiNet Network Components

Based on the FijiNet network design diagram in FIGURE 5-6, we identify the network components needed for FijiNet’s architecture. For each component, we decide whether to use a router or switch. Next, we estimate the port capacity for routers, switches, and consoles.

Refer to the following sections:

FijiNet Routers

We determine the ports needed for routers, as shown in TABLE 5-72. We need two WAN interfaces for FijiNet. Each interface will be connected to a T1 high-speed trunk, so that 1,250 concurrent users are supported (based upon the estimates for link connectivity in TABLE 5-70).

Only one 10/100 Mbit/sec port is needed for FijiNet; however, two ports are required for redundancy to achieve high availability as the architecture scales to support projected growth of 100,000 subscribers.

Table 5-72. FijiNet: Estimating Ports for Routers
Variable Value Description
Nwan 2 (T1) Number of WAN interface slots (T1, E1, etc.)
Nlan 2 (10/100 Mbps) Number of fixed LAN ports (10/100 Mbps)
PR= Nwan + Nlan = 4

FijiNet Switches

For FijiNet, a minimum of 8 network ports is required. In addition, we are planning for 50 percent overhead for immediate growth. Thus, a total of 12 ports is needed (see TABLE 5-73), and an L2 switch for FijiNet’s initial environment. As FijiNet grows toward 100,000 subscribers, multiple switches can be cascaded to aggregate a higher port density.

Table 5-73. FijiNet: Estimating Network Ports for Switches
Variable Value Description
Nser 1 enterprise server 1 management server Number of servers connected to the switch (mail relays, mail proxies, web servers, application servers, DNS servers, etc.)
Napl 3 firewall interfaces

2 access servers

1 console server
Number of network appliances connected to the switch (firewalls, load balancers, cache engines, IDS sensors, console servers, access servers, etc.)
Nadm 0 Number of network ports required for administrative purposes (trunking, heartbeats, failover, uplink, etc.)
Nove 4 (50% overhead) Number of network ports required for immediate growth
PS= Nser + Napl + Nadm + Nove = 12

FijiNet Console Servers

For FijiNet, we need a console server with a minimum of 7 ports to support network devices and servers. With the addition of overhead for immediate growth, a total of 10 ports is required, as shown in TABLE 5-74.

Table 5-74. FijiNet: Estimating Ports for Console Server
Variable Value Description
Nser 1 enterprise server 1 management server Number of servers connected to the console server (mail relays, mail proxies, web servers, application servers, DNS servers, etc.)
Napl 1 firewall

2 access servers

1 router

1 switch
Number of network appliances connected to the console server (firewalls, load balancers, cache engines, IDS sensors, access servers, routers, switches, etc.)
Nove 3 (50%) Number of console ports required for immediate growth
PS= Nser + Napl + Nove = 10

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.117.168.57