簡易檢索 / 詳目顯示

研究生: 陳萬軍
Chen, Wan-Chun
論文名稱: 具可擴充性的SCTP網路協定卸載架構
A Scalable Offload Architecture for Stream Control Transmission Protocol (SCTP)
指導教授: 陳中和
Chen, Chung-ho
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 電腦與通信工程研究所
Institute of Computer & Communication Engineering
論文出版年: 2008
畢業學年度: 96
語文別: 中文
論文頁數: 87
中文關鍵詞: SCTP網路卸載引擎可擴充性
外文關鍵詞: SCTP, offload, network, architecture, scalable
相關次數: 點閱:66下載:2
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 在本篇論文中,我們提出了一個具可擴充性的SCTP網路卸載架構。為了達成SCTP協定的卸載,我們分析了SCTP與TCP的差異,並且比較了相關的網路協定卸載硬體實作的架構,同時參考軟體堆疊實作的方式,設計出我們的架構。
    為了達到網路加速的效果,我們以硬體的方式完成所有傳送及接收的資料處理和連線管理。除了協定的處理外,為了符合各種不同規模的需求,網路卸載硬體必須提供具有可擴充性的設計。我們將硬體實現為模組化的設計,可以視需求調整並聯工作的SCTP模組個數。我們以硬體模組方式加速連線的查詢及模組的管理,並且藉由嵌入式處理器支援額外連線數的擴充。
    我們在ESL設計平台上,以SystemC語言實現我們的設計,配合ARM處理器,實現了我們的設計,以目前的架構設計,每個SCTP模組可以支援16條SCTP連線同時運作。若設定在125MHz的運作時脈下,每秒可以處理15.6萬個封包。

    This thesis presents the design of an SCTP network offload engine. To propose an adequate design model, we have studied the different features of SCTP and TCP, as well as surveyed several related network offload designs and the software protocol stacks. According to our studies, we propose a scalable architecture for SCTP offload.
    To accelerate the network processing, the SCTP protocol is implemented as a hardware design which handles the data flow and the connection management. To provide flexibility, the SCTP hardware is designed as a scalable sub-module, so that multiple units can be parallelly arranged on the bus and work simultaneously. The dispatching speed between the SCTP modules is enhanced by the hardware design, and the expansion of connection numbers is supported by embedded processors.
    The design proposed in this work is implemented under an ARM environment, on an electronic system level platform and in SystemC. In the current design, each module supports 16 SCTP connections and is able to process 156,000 packets/second when it is set at 125 MHz-clock rate.

    摘要........................................................................................III ABSTRACT..........................................................................IV 致謝..........................................................................................V 目次........................................................................................VI 表目錄....................................................................................IX 圖目錄......................................................................................X 圖目錄......................................................................................X 第1章 序論.............................................................................1 1.1 研究動機......................................................................................................................................................1 1.2 研究貢獻......................................................................................................................................................2 1.3 論文編排......................................................................................................................................................2 第2章 背景知識及相關作品.................................................3 2.1 STREAM CONTROL TRANSMISSION PROTOCOL (SCTP)協定..........................................................................3 2.1.1 SCTP 協定...........................................................................................................................................3 2.1.2 SCTP與TCP的特性比較.......................................................................................................................4 2.1.3 SCTP的資料格式.................................................................................................................................9 2.1.4 一個SCTP的關聯...............................................................................................................................12 2.2 針對SCTP特性之相關研究.......................................................................................................................14 2.2.1 多重串流...........................................................................................................................................14 2.2.2 多重位址...........................................................................................................................................15 2.2.3 具部份可信賴度的傳送.....................................................................................................................15 2.2.4 壅塞控制...........................................................................................................................................16 2.3 網路卸載....................................................................................................................................................16 2.3.1 網路卸載的需求................................................................................................................................16 2.3.2 SCTP與TCP之效能比較.....................................................................................................................17 2.4 相關的網路卸載實作................................................................................................................................20 2.4.1 An TCP/IP Offload Engine (TOE) System over Gigabit Ethernet.......................................................20 2.4.2 The Latona Internet Protocol Offload Engine in TCP/IP.....................................................................23 2.4.3 An iWARP-based Network Offload Engine.........................................................................................25 第3章 SCTP卸載引擎的架構設計....................................28 3.1 設計理念....................................................................................................................................................28 3.2 設計環境....................................................................................................................................................29 3.2.1 電子層級系統設計(Electronic Level System Design, ESL Design).................................................29 3.2.2 SystemC語言與CoWare Platform Architecture平台...........................................................................30 3.2.3 QEMU虛擬機器.................................................................................................................................31 3.3 系統層級的架構........................................................................................................................................32 3.3.1 系統架構...........................................................................................................................................32 3.3.2 硬體架構...........................................................................................................................................33 3.4 SCTP模組內部之架構................................................................................................................................36 3.4.1 概觀 (Overview)...............................................................................................................................36 3.4.2 暫存器檔案 (Register file)................................................................................................................37 3.4.3 控制模組 (Control Module)..............................................................................................................40 3.4.4 傳送模組 (Tx module)......................................................................................................................49 3.5 接收模組 (RX MODULE)............................................................................................................................50 3.5.2 介面模組 (Interface module).............................................................................................................52 3.5.3 IP/MAC模組.......................................................................................................................................54 3.5.4 PCI-AMBA 橋接器模組及網路驅動程式........................................................................................55 3.6 傳送流程....................................................................................................................................................56 3.7 接收流程....................................................................................................................................................57 3.8 結語............................................................................................................................................................59 第4章 可擴充性的設計.......................................................60 4.1 實現硬體設計時會面對的問題.................................................................................................................60 4.2 對於同時處理多條連線的設計方式.........................................................................................................61 4.3 對於有限的支援連線數的解決方式.........................................................................................................65 4.4 總結擴充性的討論....................................................................................................................................68 第5章 實作及驗證的結果...................................................70 5.1 實作平台....................................................................................................................................................70 5.2 功能性驗證................................................................................................................................................71 5.3 處理時間的估算方式................................................................................................................................72 5.4 整體效能估算............................................................................................................................................78 5.5 結語............................................................................................................................................................79 第6章 結論與未來目標.......................................................81 6.1 結論............................................................................................................................................................81 6.2 未來目標....................................................................................................................................................82 參考文獻.................................................................................83

    [1] A. L. Caro, et al., “SCTP: A Proposed Standard for Robust Internet Data Transport,” IEEE Computer Society, pp. 56-63, November 2003.
    [2] S. Fu and M. Atiquzzaman, “SCTP: State of the Art in Research, Products, and Technical Challenges,” IEEE Communication Magazine, pp. 64-76, April 2004.
    [3] “Introduction to TCP/IP Offload Engine(TOE),” available: http://www.10gea.org/ .
    [4] R. Stewart, et al., “Stream Control Transmission Protocol,” IETF RFC 2960, October 2000.
    [5] J. Stone, et al., “Stream Control Transmission Protocol Checksum Change,” IETF RFC 3309, September 2002.
    [6] R. Stewart, et al., “Stream Control Transmission Protocol Partial Reliability Extension,” IETF RFC 3758, May 2004.
    [7] R. Stewart, et al., “Stream Control Transmission Protocol,” IETF RFC 4960, September 2007.
    [8] R. Stewart, et al., “Socket API Extensions for Stream Control Transmission Protocol,” IETF Internet Draft, June 2006.
    [9] J. Rosenberg, et al., “SIP: Session Initiation Protocol,” IETF RFC 3261, June 2002.
    [10] C. Bestler, et al., “Stream Control Transmission Protocol (SCTP) Direct Data Placement (DDP) Adaptation,” IETF RFC 5043, October 2007.
    [11] J. Stone, et al., “When the CRC and TCP Checksum Disagree,” Proc. ACM SIGCOMM, pp. 309–319, September 2000.
    [12] T. Seth, A.. Broscius, C. Huitema, and H.-A. Lin, ”Performance requirements for signaling in internet telephony,” IETF Internet Draft, November 1999.
    [13] A. L. Caro et al., “Improving Multimedia Performance over Lossy Network via SCTP,” ATIRP 2001, College Park, MD, March 2001.
    [14] S. Ladha and P. D. Amer, “Improving Multiple File Transfers Using SCTP Multistreaming,” IEEE Performance, Computing, and Communications, 2004 IEEE International Conference, pp. 513-522, 2004.
    [15] A. Jungmaier, “Performance Evaluation of the Stream Control Transmission Protocol,” Proc. IEEE Conf. on High Perf. Switching and Routing, pp.141–48, June 2000.
    [16] S. T. Kim, S. J. Koh, and Y. J. Kim, “Performance of SCTP for IPTV Application,” IEEE Advanced Communication Technology, the 9th International Conference, pp.2176-2180, February 2007.
    [17] M. Atiquzzaman and W. Ivancic, “Evaluation of SCTP Multistreaming over Wireless/Satellite Links,” 12th Int’l. Conf. Comp. Communication and Networks, pp. 591-594, October 2003.’
    [18] A. Jungmaier, E. P. Rathgeb, and M. Tuxen, “On the use of SCTP in Failover-scenarios,” Int’l. Conf. Info. Sys., Analysis and Synthesis, pp. 363–68, July 2002.
    [19] D. D. Clark, et al., “An Analysis of TCP Processing Overhead,” IEEE Communication Magazine, Vol. 27, No.6 pp. 23-29, June 1989.
    [20] M. Anand and B. Hartner, "TCP/IP Network Stack Performance in Linux Kernel 2.4. and 2.5," Proc. Ottawa Linux Symposium, July 2002.
    [21] J. Chase, A. Gallatin, and K. Yocum, “End-System Optimizations for High-Speed TCP,” IEEE Communications Magazine, June 2000.
    [22] A. Foong, T. Huff, H.hum, J. Patwardhan, and G. Regneier, “TCP Performance Analysis Re-visited,” IEEE International Symposium on Performance Analysis of Software and Systems, March 2003.
    [23] C. X. Guo and S. Zheng, “Analysis and Evaluation of the TCP/IP Protocol Stack of Linux,” Proc ICCT, pp. 444-453, 2000.
    [24] S. Makinecni and R. Iyer, “Architecture Characterization of TCP/IP Packet Processing on The Pentium M Processor,” Proceeding of the10th International Symposium on High Performance Computer Architecture, HPCA-10, February 2004.
    [25] J. C. Mogul, "TCP offload is a dumb idea whose time has come". Proceedings of HotOS IX: The 9th Workshop on Hot Topics in Operating Systems, USENIX Association, July 2006.
    [26] J. Ortege, et al., "Analyzing the benefits of protocol offload by full-system simulation," IEEE 15th EuroMicro International Conference on Parallel, Distributed and Network-Based Processing (PDP'07), pp. 29-237, 2007.
    [27] G. Regnier, et al., “TCP Onloading for Data Servers,” IEEE Computer, pp.48-58, November 2004.
    [28] The official home page for “Iperf”:http://www.noc.ucf.edu/Tools/Iperf/ .
    [29] The official home page for Linux kernel SCTP project:http://lksctp.sourceforge.net/
    [30] SCTP Performance tests, available:http://datatag.web.cern.ch/datatag/WP3/sctp/tests.htm
    [31] S.-M. Chung, et al., “Design and implementation of the high speed TCP/IP Offload Engine,” IEEE Communications and Information Technologies, 2007. ISCIT '07. International Symposium, pp. 574-579, October, 2005.
    [32] Z.-Z. Wu and H.-C. Chen, “Design and Implementation of TCP/IP Offload Engine System over Gigabit Ethernet,” IEEE Proc. Of 15th International Conference on Computer Communications and Network, pp245-250, 2006.
    [33] D.W. Kim, et al., “Internet Protocol Engine in TCP/IP Offloading Engine,” Advanced Communication Technology, 2008. ICACT 2008. 10th International Conference, pp. 270-275, February 2008.
    [34] P.-K. Chan, et al., “An iWARP-based TCP/IP offload Engine,” Proc. Of 17th VLSI /CAD Symposium, 2006.
    [35] R.-P. Huang, “A QEMU-based Electronic System Level System Simulation Platform,” August 2008.
    [36] Open SystemC Initiative (OSCI) organization, official site:http://www.systemc.org/ .
    [37] QEMU Processor Emulator, official site:http://bellard.org/qemu/ .
    [38] QEMU-SystemC Project, Green SoCs official site:http://www.greensocs.com/projects/QEMUSystemC .
    [39] AMBA Specification Rev2.0, available:http://www.arm.com/products/solutions/AMBA_Spec.html .
    [40] WireShark - Network protocol analyzer for Windows and Unix, available:http://www.wireshark.org/ .
    [41] Electronics and Telecommunication Research Institute(ETRI), Korea, Official Site:http://www.etri.re.kr/eng/ .
    [42] “lwIP”- A light-weight implementation of the TCP/IP protocol project, available: http://savannah.nongnu.org/projects/lwip/ .

    下載圖示 校內:2010-08-25公開
    校外:2010-08-25公開
    QR CODE