第 9 章 まとめ 79
9.2 今後の展望
これからの展望として,以下のようなことが考えられる.
他のウェブサーバへの実装・インターネットサーバへの適用: 持続的接続時間と 最大クライアント数はApacheに限らず,多くのウェブサーバに見られるパラメー タである.本論文の手法はパラメータの共通の性質を取り出して設定機構を作成し ており,Apacheには必ずしも依存していない.そのため,他のウェブサーバに対 しても適用可能であることが期待できる.本機構を実際に他のサーバに移植して みることで,本論文の手法がどこまで有効であるかを確認することが考えられる.
また,ウェブサーバに限らず電子メールサーバなどでも最大クライアント数の パラメータは存在する.これらの他のインターネットサーバへ本論文の手法を移 植することも考えられる.
より実際に近い環境での評価: 本論文では,提案手法をLAN環境で人工的に生 成したワークロードを使用して評価している.ワークロードとして,ウェブサー バの標準的なベンチマークを利用しているため,実際の環境にある程度近いこと が期待されるが,実装を公開し,実運用で利用したり,評価してもらうことでよ りよい設定機構にできる可能性がある.
他の設定手法との定量的な比較による改善: 本論文では,関連研究の実装が入 手できないため,定性的な比較のみを行っている.論文を元に実装を行い,比較 することは数ヵ月程度の時間を要するため難しい.しかしながら,実際に定量的 に比較してみることで多くの知見が得られる可能性がある.
情報工学と他の工学分野の手法との協調: 近年,ウェブサーバのアドミッション コントロールなどの分野でこれまで利用されてこなかった制御理論や品質管理な ど他の工学分野の手法が情報工学の分野に急速に採り入れられ始めている.一方 で,これまでの数十年間で独自に蓄積されてきた情報工学特有の手法もあり,こ
れらの2つの手法をこれからどのように組み合わせていくかということに大変興 味がある.特に,計算機では非線型な振舞いをすることが多く,他の工学分野の 手法をそのまま適用できないところに問題の難しさがある.
謝辞
本研究を進めるにあたり,多くの方々からご協力とご指導を賜りました.お世 話になったすべての方々に感謝いたします.
まず,主任指導教員としてお世話になりました岩崎英哉教授に深く感謝いたし ます.最初の3年は共同研究者として,私が博士後期課程に進学してからの3年は 主任指導教員として6年間にわたりお世話になりました.時には厳しく,時には あたたかい手厚いご指導をいただきました.
次に,私が卒業研究で益田研究室に配属されてから博士前期課程修了までの3年 間,主任指導教官を引き受けていただきました益田隆司教授に深く感謝いたしま す.研究環境と素晴らしい先生方との出会いを提供していただきました.
そして,慶應義塾大学理工学部情報工学科 河野健二助教授に深く感謝いたしま す.研究テーマの設定から論文の執筆に至るまできめ細やかなご指導をいただき ました.多くの貴重な時間と研究資源を割いていただいて大変感謝いたします.
本学の野下浩平教授,岩田茂樹教授,尾内理紀夫教授,多田好克教授には,本 論文をよくするための御助言をいただきました.深く感謝いたします.
河野研究室,岩崎研究室,益田研究室の皆様には研究だけにとどまらず,多く の場面で大変お世話になりました.感謝いたします.
最後に,経済的な支援も惜しまず,あたたかく見守り励ましてくれた両親に感 謝いたします.
参考文献
[1] Abdelzaher, T. F., Shin, K. G. and Bhatti, N.: Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach,IEEE Trans. on Parallel and Distributed Systems, Vol. 13, No. 1, pp. 80–96 (2002).
[2] Aguilera, M. K., Mogul, J. C., Wiener, J. L., Reynolds, P. and Muthi-tacharoen, A.: Performance Debugging for Distributed Systems of Black Boxes, Proc. 19th ACM Symp. on Operating Systems Principles, pp. 74–89 (2003).
[3] Allman, M.: A Web Server’s View of the Transport Layer, ACM SIGCOMM Computer Communication Review, Vol. 30, No. 5, pp. 10–20 (2000).
[4] Almeida, V. A. F. and Menasc´e, D. A.: Capacity Planning: An Essential Tool for Managing Web Services, IEEE Internet Computing, Vol. 2002, No. Jul-Aug, pp. 33–38 (2002).
[5] Anderson, E., Hobbs, M., Keeton, K., Spence, S., Uysal, M. and Veitch, A.: Hippodrome: Running Circles Around Storage Administration,Proc. 3rd USENIX Conf. on File and Storage Technologies, pp. 175–188 (2004).
[6] Aron, M. and Druschel, P.: Soft Timers: Efficient Microsecond Software Timer Support for Network Processing,Proc. 17th ACM Symp. on Operating Systems Principles, pp. 232–246 (1999).
[7] Banga, G. and Druschel, P.: Measuring the Capacity of a Web Server, Proc.
1st USENIX Symp. on Internet Technologies and Systems, pp. 61–72 (1997).
[8] Banga, G. and Druschel, P.: Measuring the Capacity of a Web Server under Realistic Loads,World Wide Web Journal, Vol. 2, No. 1–2, pp. 69–83 (1999).
[9] Banga, G., Druschel, P. and Mogul, J. C.: Resource Containers: A New Fa-cility for Resource Management in Server Systems,Proc. 3rd USENIX Symp.
on Operating Systems Design and Implementation, pp. 45–58 (1999).
[10] Banga, G. and Mogul, J. C.: Scalable Kernel Performance for Internet Servers under Realistic Loads, Proc. 1998 USENIX Annual Tech. Conf., pp. 1–12 (1998).
[11] Banga, G., Mogul, J. C. and Druschel, P.: A Scalable and Explicit Event Delivery Mechanism for UNIX,Proc. 1999 USENIX Annual Tech. Conf., pp.
253–265 (1999).
[12] Barford, P. and Crovella, M.: Generating Representative Web Workloads for Network and Server Performance Evaluation, Proc. ACM SIGMETRICS 1998, pp. 151–160 (1998).
[13] Barford, P. and Crovella, M.: A Performance Evaluation of Hyper Text Trans-fer Protocols,ACM SIGMETRICS Performance Evaluation Review, Vol. 27, No. 1, pp. 188–197 (1999).
[14] Bennani, M. N. and Menasc´e, D. A.: Assessing the Robustness of Self-Managing Computer Systems under Highly Variable Workloads, Proc. 1st Int’l Conf. on Autonomic Computing, pp. 62–69 (2004).
[15] Berners-Lee, T., Fielding, R. and Frystyk, H.: Hypertext Transfer Protocol – HTTP/1.0, RFC 1495(1993).
[16] Bodik, P., Friedman, G., Biewald, L., Levine, H., Candea, G., Patel, K., Tolle, G., Hui, J., Fox, A., Jordan, M. I. and Patterson, D.: Combining Visualization and Statistical Analysis to Improve Operator Confidence and Efficiency for Failure Detection and Localization,Proc. 2nd IEEE Int’l Conf. on Autonomic Computing, pp. 89–100 (2005).
[17] Brodie, M., Ma, S., Lohman, G., Mignet, L., Wilding, M., Champlin, J.
and Sohn, P.: Quickly Finding Known Software Problemns via Automated Symptom Matching, Proc. 2nd IEEE Int’l Conf. on Autonomic Computing, pp. 101–110 (2005).
[18] Chase, J. S., Anderson, D. C., Thakar, P. N., Vahdat, A. and Doyle, R. P.:
Managing Energy and Server Resources in Hosting Centres, Proc. 18th ACM Symp. on Operating Systems Principles, pp. 103–116 (2001).
[19] Chen, X., Mohapatra, P. and Chen, H.: An Admission Control Scheme for Predictable Server Response Time for Web Access, Proc. WWW Conf. 2001, pp. 545–554 (2001).
[20] Cherkasova, L. and Phaal, P.: Session-Based Admission Control: A Mecha-nism for Improving the Performance of an Overloaded Web Server, Technical Report HPL-98-119, HP Labs (1998).
[21] Chung, I.-H. and Hollingsworth, J. K.: Automated Cluster-Based Web Ser-vice Performance Tuning,Proc. 13th IEEE Int’l Symp. on High Performance Distributed Computing, pp. 36–44 (2004).
[22] Chung, I.-H. and Hollingsworth, J. K.: Using Information from Prior Runs to Improve Automated Tuning Systems, Proc. ACM/IEEE Conf. on Super Computing 2004, p. 30 (2004).
[23] Cohen, I., Chase, J. S., Goldszmidt, M., Kelly, T. and Symons, J.: Correlating Instrumentation Data to System States: A Building Block for Automated Di-agnosis and Control,Proc. 6th USENIX Symp. on Operating Systems Design and Implementation, pp. 231–244 (2004).
[24] Costa, D., Rilho, T. and Madeira, H.: Joint Evaluation of Performance and Robustness of a COTS DBMS through Fault-Injection,Proc. IEEE/IFIP Int’l Conf. on Dependable Systems and Networks 2000, pp. 251–260 (2000).
[25] Diao, Y., Hellerstein, J. L., Parekh, S. and Bigus, J. P.: Managing Web Server Performance with AutoTune Agents, IBM Systems Journal, Vol. 42, No. 1, pp. 136–149 (2003).
[26] Diao, Y., Eskesen, F., Froehlich, S., Hellerstein, J. L., Keller, A., Spainhower, L. and Surendra, M.: Generic On-Line Discovery of Quantitative Models for Service Level Management., Proc. 8th IFIP/IEEE Int’l Symp. on Integrated Network Management, pp. 157–170 (2003).
[27] Diao, Y., Eskesen, F., Froehlich, S., Hellerstein, J. L., Spainhower, L. and Surendra, M.: Genereic Online Optimization of Multiple Configuration Pa-rameters with Application to a Database Server.,Proc. 14th IFIP/IEEE Int’l Workshop on Distributed Systems: Operations and Management, pp. 3–15 (2003).
[28] Diao, Y., Gandhi, N., Hellerstein, J., Parekh, S. and Tilbury, D. M.: Using MIMO Feedback Control to Enforce Policies for Interrelated Metrics With Application to the Apache Web Server, Proc. 7th IEEE/IFIP Network Oper-ations and Management Symp., pp. 219–234 (2002).
[29] Doyle, R. P., Chase, J. S., Asad, O. M., Jin, W. and Vahdat, A. M.: Model-Based Resource Provisioning in a Web Service Utility, Proc. 4th USENIX Symp. on Internet Technologies and Systems, pp. 57–71 (2003).
[30] Elnikety, S., Nahum, E., Tracey, J. and Zwaenepoel, W.: A Method for Trans-parent Admission Control and Request Scheduling in E-Commerce Web Sites, Proc. WWW Conf. 2004, pp. 276–286 (2004).
[31] Fielding, R. T., Gettys, J., Mogul, J. C., Frystyk, H., Masinter, L., Leach, P. J.
and Berners-Lee, T.: RFC 2616 Hypertext Transfer Protocol – HTTP/1.1 (1999).
[32] Fox, A., Gribble, S. D., Chawathe, Y., Brewer, E. A. and Gauthier, P.:
Cluster-Based Scalable Network Services, Proc. 16th ACM Symp. on Operat-ing System Principles, pp. 78–91 (1997).
[33] Ganek, A. G. and Corbi, T. A.: The Dawning of the Autonomic Computing Era, IBM Systems Journal, Vol. 42, No. 1, pp. 5–18 (2003).
[34] Harchol-Balter, M., Schroeder, B., Bansal, N. and Agrawal, M.: Size-based Scheduling to Improve Web Performance,ACM Trans. on Computer Systems, Vol. 21, pp. 207–233 (2003).
[35] Hsueh, M.-C., Tsai, T. K. and Iyer, R. K.: Fault Injection Techniques and Tools,IEEE Computer, Vol. 30, No. 4, pp. 75–82 (1997).
[36] Hu, J. C., Pyarali, I. and Schmidt, D. C.: High Performance Web Servers on Windows NT,Proc. USENIX Windows NT Workshop 1997, p. 149 (1997).
[37] Hu, Y., Nanda, A. and Yang, Q.: Measurement, Analysis and Performance Improvement of the Apache Web Server, Proc. 18th IEEE Int’l Performance, Computing and Communications Conf., pp. 261–267 (1999).
[38] IEEE: Information technology – Portable Operating System Interface (POSIX), IEEE standard 1003.1, IEEE (1990).
[39] Jiang, H. and Dovrolis, C.: Passive Esitimation of TCP Round-Trip Times, ACM SIGCOMM Computer Communication Review, Vol. 32, No. 3, pp. 75–88 (2002).
[40] Jin, W., Chase, J. S. and Kaur, J.: Interposed Proportional Sharing for a Storage Service Utility,Proc. ACM SIGMETRICS 2004, pp. 37–48 (2004).
[41] Jung, J., Krishnamurthy, B. and Rabinovich, M.: Flash Crowds and Denial of Service Attacks: Characterization and Implications for CDNs and Web Sites, Proc. WWW Conf. 2002, pp. 252–262 (2002).
[42] Kamra, A., Misra, V. and Nahum, E. M.: Yaksha: A Self-Tuning Controller for Managing the Performance of 3-Tiered Web Sites,Proc. 12th Int’l Work-shop on Quality of Service, pp. 47–56 (2004).
[43] Karlsson, M. and Covell, M.: Dynamic Black-Box Performance Model Esti-mation for Self-Tuning Regulators,Proc. 2nd Int’l Conf. on Autonomic Com-puting, pp. 172–182 (2005).
[44] Karlsson, M., Karamanolis, C. T. and Zhu, X.: Triage: Performance Differen-tiation for Storage Systems Using Adaptive Control,ACM Trans. on Storage, Vol. 1, No. 4, pp. 457–480 (2005).
[45] Karlsson, M., Zhu, X. and Karamanolis, C.: An Adaptive Optimal Controller for Non-Intrusive Performance Differentiation in Computing Services, Proc.
Int’l Conf. on Control and Automation 2005, pp. 709–714 (2005).
[46] Kegel, D.: The C10K problem. http://www.kegel.com/c10k.html.
[47] Kim, M. and Noble, B. D.: Mobile Network Estimation, Proc. 7th ACM Int’l Conf. on Mobile Computing and Networking, pp. 298–309 (2001).
[48] Li, S. X., Martin, R. P., Nagaraja, K., Nguyen, T. D. and Zhang, B.: Mendo-sus: A SAN-based Fault-Injection Test-Bed for Construction of Highly Avail-able Network, Proc. 1st Workshop on Novel Uses of System Area Networks, pp. 70–79 (2002).
[49] Liu, X., Sha, L., Diao, Y., Froehlich, S., Hellerstein, J. L. and Parekh, S. S.:
Online Response Time Optimization of Apache Web Server,Proc. 11th IEEE Int’l Workshop on QoS, pp. 461–478 (2003).
[50] Lorenz, S.: Is Your Web Site Ready for the Flash Crowd? http://www.
serverworldmagazine.com/sunserver/2000/11/flash.shtml.
[51] Menasc´e, D. A., Almeida, V. A. F., Fonseca, R. and Mendes, M. A.: Business-oriented Resource Management Policies for E-commerce Servers,Performance Evaluation, Vol. 42, pp. 223–239 (2000).
[52] Menasc´e, D. A., Barbar´a, D. and Dodge, R.: Preserving QoS of E-commerce Sites Through Self-Tuning: A Performance Model Approach, Proc. ACM Conf. on Electric Commerce, pp. 224–234 (2001).
[53] Menasc´e, D. A. and Bennani, M. N.: On the Use of Performance Models to Design Self-Managing Computer Systems,Proc. 2003 Computer Measurement Group Conf., pp. 1–9 (2003).
[54] Menasc´e, D. A., Bennani, M. N. and Ruan, H.: On the Use of Online An-alytic Performance Models in Self-Managing and Self-Organizing Computer Systems,Self-Star Properties in Complex Information Systems, Lecture Notes in Computer Science, Vol. 3460, pp. 128–142 (2005).
[55] Microsoft: Internet Information Services. http://www.microsoft.com/.
[56] Mogul, J. C.: The Case for Persistent-Connection HTTP, Proc. ACM SIG-COMM 1995, pp. 299–313 (1995).
[57] Mosberger, D. and Jin, T.: httperf: A Tool for Measuring Web Server Per-formance, Proc. 1st Workshop on Internet Server Performance, pp. 59–67 (1998).
[58] Nagaraja, K., Oliveira, F., Bianchini, R., Martin, R. P. and Nguyen, T. D.:
Understanding and Dealing with Operator Mistakes in Internet Services,Proc.
6th USENIX Symp. on Operating Systems Design and Implementation, pp.
61–76 (2004).
[59] Nahum, E., Barzilai, T. and Kandlur, D. D.: Performance Issues in WWW Servers, IEEE/ACM Trans. on Networking, Vol. 10, No. 1, pp. 2–11 (2002).
[60] Nielsen, H. F., Gettys, J., Baird-Smith, A., Prud’hommeaux, E., Lie, H. W.
and Lilley, C.: Network Performance Effects of HTTP/1.1, CSS1, and PNG, Proc. ACM SIGCOMM 1997, pp. 155–166 (1997).
[61] Oliveira, F., Nagaraja, K., Bachwani, R., Bianchini, R., Martin, R. P. and Nguyen, T. D.: Understanding and Validating Database System Administra-tion,Proc. 2006 USENIX Annual Tech. Conf., pp. 213–228 (2006).
[62] Oppenheimer, D., Ganapathi, A. and Patterson, D. A.: Why Do Internet Services Fail, and What Can Be Done About It?, Proc. 4th USENIX Symp.
on Internet Technologies and Systems, pp. 1–16 (2003).
[63] Pai, V. S., Druschel, P. and Zwaenepoel, W.: Flash: An Efficient and Portable Web Server, Proc. 1999 USENIX Annual Tech. Conf., pp. 199–212 (1999).
[64] Pai, V. S., Druschel, P. and Zwaenepoel, W.: IO-Lite: A Unified I/O Buffering and Caching System,Proc. 3rd USENIX Symp. on Operating Systems Design and Implementation, pp. 15–28 (1999).
[65] Patterson, D., Brown, A., Broadwell, P., Candea, G., Chen, M., Cutler, J., Enriquez, P., Fox, A., Kiciman, E., Merzbacher, M., Oppenheimer, D., Sastry, N., Tetzlaff, W., Traupman, J. and Treuhaft, N.: Recovery-Oriented Com-puting (ROC): Motivation, Definition, Techniques, and Case Studies, UC Berkeley Computer Science Technical Report UCB//CSD-02-1175(2002).
[66] Ribler, R. L., Simitci, H. and Reed, D. A.: The Autopilot Performance-directed Adaptive Control System, Future Generation Compupter Systems, Vol. 18, No. 1, pp. 175–187 (2001).
[67] Ribler, R. L., Vetter, J. S., Simitci, H. and Reed, D. A.: Autopilot: Adaptive Control of Distributed Applications, Proc. 7th IEEE Int’l Symp. on High Performance Distributed Computing, pp. 172–179 (1998).
[68] Robertsson, A., Wittenmark, B., Kihl, M. and Andersson, M.: Design and Evaluation of Load Control in Web Server Systems, Proc. 2004 American Control Conf., pp. 1980–1985 (2004).
[69] Saito, Y., Bershad, B. N. and Levy, H. M.: Manageability, Availability and Performance in Porcupine: A Highly Scalable, Cluster-based Mail Service., Proc. 17th ACM Symp. on Operating Systems Principles, pp. 1–15 (1999).
[70] Sieh, V. and Buchacker, K.: UMLinux - A Versatile SWIFI Tool, Proc. 2nd Europian Dependable Computing Conf., pp. 159–171 (2002).
[71] Sopitkamol, M. and Menasc´e, D. A.: A Method for Evaluating the Impact of Software Configuration Parameters on E-Commerce Sites,Proc. Workshop on Software and Performance 2005, pp. 53–64 (2005).
[72] Standard Performance Evaluation Corporation: The SPECweb99 Benchmark (1999). http://www.spec.org/osg/web99/.
[73] Sun Microsystems: Designing Enterprise Applications with the J2EE Plat-form. http://java.sun.com/reference/blueprints/.
[74] The Apache Software Foundation: Apache HTTP Server (1995). http://
www.apache.org/.
[75] The Apache Software Foundation: Performance Notes - Apache Tuning (2002). http://www.apache.org/.
[76] Transaction Processing Performance Council: TPC Benchmark App (TPC-App). http://www.tpc.org/tpc app.
[77] Verghese, B., Gupta, A. and Rosenblum, M.: Performance Isolation: Sharing and Isolation in Shared-Memory Multiprocessors., Proc. 8th Int’l Conf. on Architectural Support for Programming Languages and Operating Systems, pp. 181–192 (1998).
[78] von Behren, R., Condit, J., Zhou, F., Necula, G. C. and Brewer, E.: Capriccio:
Scalable Threads for Internet Services, Proc. 19th ACM Symp. on Operating Systems Principles, pp. 268–281 (2003).
[79] Walsh, W. E., Tesauro, G., Kephart, J. O. and Das, R.: Utility Functions in Autonomic Systems, Proc. 1st Int’l Conf. on Autonomic Computing, pp.
70–77 (2004).
[80] Wang, H. J., Platt, J. C., Chen, Y., Zhang, R. and Wang, Y.-M.: Auto-matic Misconfiguration Troubleshooting with PeerPressure, Proc 6th Symp.
on Operating Systems Design and Implementation, pp. 245–258 (2004).
[81] Welsh, M. and Culler, D.: Adaptive Overload Control for Busy Intenet Servers, Proc. 4th USENIX Symp. on Internet Technologies and Systems, pp.
43–57 (2003).
[82] Welsh, M., Culler, D. and Brewer, E.: SEDA: An Architecture for Well-Conditioned, Scalable Internet Services,Proc. 18th ACM Symp. on Operating Systems Principles, pp. 230–243 (2001).
[83] Whitaker, A., Cox, R. S. and Gribble, S. D.: Configuration Debugging as Search: Finding the Needle in the Haystack, Proc. 6th USENIX Symp. on Operating Systems Design and Implementation, pp. 77–90 (2004).
[84] Xi, B., Liu, Z., Raghavachari, M., Xia, C. H. and Zhang, L.: A Smart Hill-Climbing Algorithm for Application Server Configuration,Proc. WWW Conf.
2004, pp. 287–296 (2004).
[85] Zeus Technologies: Zeus Web Server. http://www.zeus.com/.