Responsive image
博碩士論文 etd-0729102-151308 詳細資訊
Title page for etd-0729102-151308
論文名稱
Title
在叢集式伺服器上設計與實作一個以硬體為基礎的封包轉送機制
The Design and Implementation of Hardware-based Packet Forwarding Mechanism on Web Cluster
系所名稱
Department
畢業學年期
Year, semester
語文別
Language
學位類別
Degree
頁數
Number of pages
69
研究生
Author
指導教授
Advisor
召集委員
Convenor
口試委員
Advisory Committee
口試日期
Date of Exam
2002-07-25
繳交日期
Date of Submission
2002-07-29
關鍵字
Keywords
叢集式伺服器、封包轉送、硬體
hardware, web cluster, forward
統計
Statistics
本論文已被瀏覽 5691 次,被下載 0
The thesis/dissertation has been browsed 5691 times, has been downloaded 0 times.
中文摘要
近年來,由於網路快速普及化,使得網際網路(Internet)和網頁服務(web service)已經變成世界上所有主從式架構模型(Client-Server model)最廣泛的操作平台和應用,其成長之快速超出了想像空間,許多服務也逐漸由其傳統的型態轉變為以web service作為媒介。在網路負載日漸增加的情形下,伺服器的架構也就需要因應調整,其中叢集式伺服器架構最能符合擴充性、可及性與高效能的要求而備廣泛的使用。本實驗室也在之前已經完成了軟體Content-aware Distributor的設計,並將它實作在Linux的Kernel中,來有效支援content-based的遶送。
本篇論文是架構在實驗室之前的成果,由硬體設計的角度去分析,設計並實作軟體模組中能硬體化的部分,以期降低軟體負荷,加速封包處理。
我們根據對軟體模組工作分析的結果,設計與實作了硬體的封包轉送機制,切出了三個主要的功能,做成三個Engines,分別是Analyze Engine,負責過濾與分析進到Distributor的封包,決定該封包是要往上層送,或是直接轉送;Lookup Engine,負責在儲存於table的大量的連線訊息中,快速的找到該封包的資料,以供後續處理;Update Engine,以最快的時間將封包修改完成,送到另一端的send queue,我們在此Engine上利用了Patch的演算法,讓封包間與其長度無關(Packet Length Independence),使得每個封包修改的時間長度相同。
我們以Verilog HDL和Altera公司的EDA tools來完成所有的設計,並做了模擬與效能的分析,依據時序模擬結果計算Packet Forwarder處理最短封包的速度,在以時脈50MHz的速度下運作,其處理速度是兩個埠網路卡接收速度的兩倍多,因此我們可以得知這樣的子系統除了可以減少上層處理此部分工作的負擔外,並且也加速了封包轉送的工作。



Abstract
The Internet and web service have become the most popularly platform and application of the Client-Server model due to the universality of the network recently years. Its growth is too fast to imagine the effect, many traditional service changes into web service stage by stage, and the load of the servers become more and more heavy. In the situation the server architecture must be adapted oppositely. The web cluster architecture has the best suit of the scalability, reliability and high performance requirement, was used extensively. We have designed and implemented a mechanism termed Content-aware Distributor, which is a software module for kernel-level extension, to effectively support content-based routing.
This paper is based on the achievement of the software-based Content-aware Distributor; we deliver some high repetition and fixity tasks to the hardware module, instead of the software module, to expect the hardware module could share the load of the software module and speedup the packet processing.
We design and implement the hardware-based packet forwarding mechanism, by the analyze result from the software module; partition three major functions into three Engines: The Analyze Engine, which is responsible to identify and analyze the header of the packet, and decide the packet needs to be send to the upper layer or forwarded; The Lookup Engine, which is responsible to lookup the address of the table which stores the data of packet modification; and the Update Engine, used to modify the packet header as soon as possible then transfer to the send queue. We use an algorithm termed Patch to fast calculate the checksums; it causes the packet length independence modification.
For the implementation, we use the Verilog HDL and EDA tools of Altera Corporation to accomplish the whole design. Simulation and evaluation the performance of processing the minimum packets, by operation at 50MHz system clock; our mechanism is faster double times than the packet receiving of two Fast Ethernet ports. From the resule we know our hardware mechanism is not only sharing the load of the upper layer, but also speedup the packet forwarding.



目次 Table of Contents
4
中文摘要……………………………………………………………………………………...1
英文摘要……………………………………………………………………………………...2
目錄...... 4
圖目錄.............................................................................................................................. 6
表目錄.............................................................................................................................. 8
一、緒論.. 9
1.1 研究動機................................................................................................................... 9
1.2 研究目標................................................................................................................. 10
1.3 研究貢獻................................................................................................................. 10
1.4 內容編排................................................................................................................. 11
二、相關研究探討................................................................................................................ 12
2.1 叢集式伺服器......................................................................................................... 12
2.2 Content-aware Distributor........................................................................................ 13
2.3 網路處理器(Network Processor) and 網路位址轉換(NAT)................................. 15
三、設計與實作.................................................................................................................... 17
3.1 設計議題................................................................................................................. 17
3.1.1 Connection Binding....................................................................................... 17
3.1.2 封包識別...................................................................................................... 18
3.1.3 Patch 演算法................................................................................................. 19
3.1.4 Mapping Table............................................................................................... 20
3.1.5 Table lookup .................................................................................................. 21
3.2 功能描述與架構..................................................................................................... 22
3.2.1 Packet Forwarder 的運作方式...................................................................... 24
3.2.2 上層介面...................................................................................................... 25
3.2.2.1 上層命令........................................................................................... 25
3.2.2.2 上層回報訊息................................................................................... 25
3.2.3 接收介面...................................................................................................... 27
3.2.4 傳送介面...................................................................................................... 27
3.3 模組設計................................................................................................................. 28
3.3.1 Analyze Engine.............................................................................................. 28
3.3.1.1 Analyze Engine 信號描述.................................................................. 29
3.1.1.2 分析資料設定................................................................................... 29
3.1.1.3 封包分析運作方式........................................................................... 30
3.3.2 Lookup Engine .............................................................................................. 32
3.3.2.1 Lookup Engine 信號描述.................................................................. 33
3.3.2.2 Mapping Table.................................................................................... 35
3.3.2.3 Lookup Table...................................................................................... 37
3.3.3 Update Engine ............................................................................................... 51
3.3.3.1 Update Engine 信號描述................................................................... 51
3.3.3.2 Update Engine 的模組....................................................................... 52
3.3.3.3 Number Adder .................................................................................... 52
3.3.3.4 Patch 模組.......................................................................................... 53
3.3.3.5 Update Engine 的運作方式............................................................... 54
3.3.4 SDRAM 控制器............................................................................................ 55
3.3.5 SDRAM Controller 驅動器.......................................................................... 55
3.4 合成......................................................................................................................... 57
3.4.1 合成工具與目的元件.................................................................................. 57
3.4.2 合成面積與工作時脈................................................................................... 57
四、模擬與驗證.................................................................................................................... 58
4.1 模擬環境設定......................................................................................................... 58
4.2 驗證方法與結果..................................................................................................... 58
4.2.1 模組功能驗證.............................................................................................. 58
4.2.2 整體驗證...................................................................................................... 60
4.2.3 時序模擬結果.............................................................................................. 61
五、效能評估........................................................................................................................ 63
六、結論與未來展望............................................................................................................ 65
七、參考文獻........................................................................................................................ 67
參考文獻 References
[1] Internet Weather Report (IWR). Available at http://www.mids.org
[2] A. Fox, S. Gribble, Y. Chawathe and E. A. Brewer, “Cluster-based scalable network
services,” Proceeding of SOSP ’97, pp. 78-91. St. Malo, France, October 1997
[3] C.S.Yang, M.Y.Luo, “Design and implementation of a environment for building scalable
and highly available Web server,” Proceedings of 1998 International Symposium on
Internet Techology, pp.124-131 April 29-May 1. 1998.
[4] C.S. Yang and M.Y. Luo, “An Effective Mechanism for Supporting Content-based
Routing in Scalable Web Server Cluster,” Proceedings of Parallel Processing, 1999..
1999 International Workshops on , Page(s): 240 –245, 1999
[5] H.Y. Yeom,J. Ha, and I.Kim, ”IP multiplexing by transparent port-address translator”
Proceedings of the 10th USENIX System Administration Conference Sep. 29 – Oct
4,1996 .
[6] C.S. Yang and M.Y. Luo, “Design and implementa of a environment for building scalable
and highly available web server,” Processing of 1998 International Symposium on
Internet Technology, pp.124-131, April 29 – May 1,1998 .
[7] IBM Corporation. The IBM Interactive Network Dispatcher 1998.
[8] CISCO. Local Director. http://www.cisco.com/ .
[9] Y.M. Wang, P.Y. Chung, C.M. Lin ,and Y. Huang, “HAWA: aclient-side approach to
high-availability web access,” Proceedings of 6th Internetional World Wide Web
Conference, April 1997 .
[10] D. Kim; C.H. Park; D. Park,”Request rate adaptive dispatching architecture for scalable
Internet server, “Cluster Computing, 2000. Proceedings. IEEE International Conference
on , Page(s): 289 –296, 2000
[11] Colajanni, M.; Yu, P.S.; Cardellini, V. “Dynamic load balancing in geographically
distributed heterogeneous Web servers “,Distributed Computing Systems, 1998.
Proceedings. 18th International Conference on , 1998
[12] Narendran, B.; Rangarajan, S.; Yajnik, S. ”Data distribution algorithms for load
balanced fault-tolerant Web access,“The Sixteenth Symposium on Reliable Distributed
Systems, Page(s): 97 –106, 1997
[13] Hubbs, B., “A Survey of HighlyIntergrated Ethernet DataComm Devices”, IEEE
Aerospace Conference, Volume: 4 Page(s): 489 -498, 1998
[14] L.S.Lin, “Introduction to Network Processors”, Network Processor Technology and
Feature Trend Seminar, Dec 7, 2000
[15] http://developer.intel.com/design/network
[16]http://e-www.motorola.com/webapp/sps/site/prod_summary.jsp?code=C-5&nodeId=01
M994862703126
[17] http://www.csix.org
[18] http://www.cpixforum.org
[19] “TCP/IP Illustrated, Volume 1”, W.Richard Stevens
[20] RFC 1071, IETF(The Internet Engineering Task Force), http://www.ietf.org/rfc.html
[21] Zalenski, R., “Firewall technologies,” IEEE Potentials , Volume: 21 Issue: 1 Page(s):
24 –29, Feb.-March 2002
[22] “SDR SDRAM Controller White Paper”, Altera Croporation, May 2000, ver. 1
[23] 林銘波編著;陳美圓校訂,”數位系統設計”,全華科技圖書股份有限公司,台北,
1997 年3 月
[24] RFC 1631, IETF(The Internet Engineering Task Force), http://www.ietf.org/rfc.html
[25] RFC 2391, IETF(The Internet Engineering Task Force), http://www.ietf.org/rfc.html
[26] Tim Melchior, “Leveraging Very Large Content Addressable Memories”, UTMC
Microelectronic System, 1997
[27] “Using APEX 20KE CAM for Fast Search Applications”, Altera Croporation, August
1999
[28] “Implementing High-Speed Search Applications with Altera CAM”, Altera Croporation,
July 2001
[29] “APEX CAM as Cache for External CAM”, Altera Croporation, Jan 2001
[30] 陳銘志,”10/100 Mbps 乙太網路極限控制器之研製和效能量測”,雲林科技大學
電子與資訊工程技術研究所碩士論文,1999 年2 月
[31] http://www.altera.com
[32] http://www.altera.com/products/software/pld/products/q2/qts-index.html
[33] http://www.mentor.com/leonardospectrum/
[34] http://www.synplicity.com/products/synplify.html
[35] “APEX 20K Programmable Logic Device Family Data Sheet”, Altera Croporation,
March 2002
[36] http://www.model.com/products/modelsim_pe_se.asp
[37] http://www.novas.com/products/debussy.html
[38] C.W. Jen, “SoC Design Methodology”, System-On-Chip Design Technology Workshop,
July 18-20, 2001
[39] Jain, Raj, “A comparison of hashing schemes for address lookup in computer networks”,
Communications, IEEE Transactions on , Volume: 40 Issue: 10 Page(s): 1570 –1573,
Oct. 1992
[40] Daxiao Yu; Smith, B.C.; Wei, B., “Forwarding engine for fast routing lookups and
updates”, Global Telecommunications Conference, 1999. GLOBECOM '99 , Volume: 2
Page(s): 1556 -1564, 1999
[41] Burton H. Bloom, “Space/time trade-offs in hash coding with allowable errors”,
Communications of the ACM, Volume 13 Issue 7, July 1970
[42] Yazdani, N.; Min, P.S., “Fast and scalable schemes for the IP address lookup problem”,
High Performance Switching and Routing, 2000. ATM 2000. Proceedings of the IEEE
Conference on , Page(s): 83 –92, 2000
[43] Wen-Sheng Yang, Jong-Jiann Shieh, “Hardware Based Routing Lookup for IPv4”,
ICS2000, June 2000
[44] Nen-Fu Huang; Shi-Ming Zhao, “A novel IP-routing lookup scheme and hardware
architecture for multigigabit switching routers”, Selected Areas in Communications,
IEEE Journal on , Volume: 17 Issue: 6 Page(s): 1093 -1104 , June 1999
電子全文 Fulltext
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
論文使用權限 Thesis access permission:校內校外均不公開 not available
開放時間 Available:
校內 Campus:永不公開 not available
校外 Off-campus:永不公開 not available

您的 IP(校外) 位址是 3.139.82.23
論文開放下載的時間是 校外不公開

Your IP address is 3.139.82.23
This thesis will be available to you on Indicate off-campus access is not available.

紙本論文 Printed copies
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。
開放時間 available 已公開 available

QR Code