High Performance Computing & Communication Research Laboratory 12/11/1997 [1] Hyok Kim Performance Analysis of TCP/IP Data.

Slides:



Advertisements
Similar presentations
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Advertisements

TELE202 Lecture 14 TCP/UDP (2) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »TCP/UDP (1) »Source: chapter 17 ¥This Lecture »TCP/UDP (2) »Source: chapter.
Chapter 8 Hardware Conventional Computer Hardware Architecture.
1 William Stallings Data and Computer Communications 7 th Edition Chapter 2 Protocols and Architecture.
VIA and Its Extension To TCP/IP Network Yingping Lu Based on Paper “Queue Pair IP, …” by Philip Buonadonna.
Department of Computer Engineering University of California at Santa Cruz Networking Systems (1) Hai Tao.
An 8051 Based Web Server Project by Mason Kidd Advised by Dr. Schertz.
Linux Networking Overview COMS W Spring 2010.
CSCI 4550/8556 Computer Networks Comer, Chapter 19: Binding Protocol Addresses (ARP)
OSI Model.
Computer Network Architecture and Programming
Introduction To Networking
EE 4272Spring, 2003 Protocols & Architecture A Protocol Architecture is the layered structure of hardware & software that supports the exchange of data.
Figure 1.1 Interaction between applications and the operating system.
Understanding Networks. Objectives Compare client and network operating systems Learn about local area network technologies, including Ethernet, Token.
1 Link Layer & Network Layer Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
Embedded Transport Acceleration Intel Xeon Processor as a Packet Processing Engine Abhishek Mitra Professor: Dr. Bhuyan.
VSP Video Station Protocol Presented by : Mittelman Dana Ben-Hamo Revital Ariel Tal Instructor : Sela Guy Presented by : Mittelman Dana Ben-Hamo Revital.
Defining Network Protocols Application Protocols –Application Layer –Presentation Layer –Session Layer Transport Protocols –Transport Layer Network Protocols.
OSI Model Routing Connection-oriented/Connectionless Network Services.
Performance Tradeoffs for Static Allocation of Zero-Copy Buffers Pål Halvorsen, Espen Jorde, Karl-André Skevik, Vera Goebel, and Thomas Plagemann Institute.
1.  Project Goals.  Project System Overview.  System Architecture.  Data Flow.  System Inputs.  System Outputs.  Rates.  Real Time Performance.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Network Layer Network Fundamentals – Chapter 5.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Layer Architecture of Network Protocols
1 ELEN602 Lecture 2 Review of Last Lecture Layering.
TCP/IP Yang Wang Professor: M.ANVARI.
LWIP TCP/IP Stack 김백규.
High Performance User-Level Sockets over Gigabit Ethernet Pavan Balaji Ohio State University Piyush Shivam Ohio State University.
Lecture 3 Review of Internet Protocols Transport Layer.
LWIP TCP/IP Stack 김백규.
Network Services Networking for Home & Small Business.
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
University of the Western Cape Chapter 12: The Transport Layer.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
Transport Layer: TCP and UDP. Overview of TCP/IP protocols Comparing TCP and UDP TCP connection: establishment, data transfer, and termination Allocation.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
Srihari Makineni & Ravi Iyer Communications Technology Lab
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Application Block Diagram III. SOFTWARE PLATFORM Figure above shows a network protocol stack for a computer that connects to an Ethernet network and.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
CSE 6590 Department of Computer Science & Engineering York University 111/9/ :26 AM.
An Architecture and Prototype Implementation for TCP/IP Hardware Support Mirko Benz Dresden University of Technology, Germany TERENA 2001.
4/19/20021 TCPSplitter: A Reconfigurable Hardware Based TCP Flow Monitor David V. Schuehler.
1 Presented By: Eyal Enav and Tal Rath Eyal Enav and Tal Rath Supervisor: Mike Sumszyk Mike Sumszyk.
TCP/IP Protocol Architecture CSE 3213 – Fall
Hot Interconnects TCP-Splitter: A Reconfigurable Hardware Based TCP/IP Flow Monitor David V. Schuehler
Networking Basics CCNA 1 Chapter 11.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
Latency Reduction Techniques for Remote Memory Access in ANEMONE Mark Lewandowski Department of Computer Science Florida State University.
Intel Research & Development ETA: Experience with an IA processor as a Packet Processing Engine HP Labs Computer Systems Colloquium August 2003 Greg Regnier.
1 OSI and TCP/IP Models. 2 TCP/IP Encapsulation (Packet) (Frame)
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 13 TCP Implementation.
ATM Protocol Architecture Mode. ATM architecture uses a logical reference model to describe its functions ATM functions correspond to physical layer and.
The OSI Model An overview of the media layer (Physical, Data Link, Network) By Luke Shiffner.
Week #8 OBJECTIVES Chapter #5. CHAPTER 5 Making Networks Work Two Networking Models –OSI OPEN SYSTEMS INTERCONNECTION PROPOSED BY ISO –INTERNATIONAL STANDARDS.
The OSI Model. Understanding the OSI Model In early 1980s, manufacturers began to standardize networking so that networks from different manufacturers.
Network architecture model What is an “architecture model”? An architecture model offers a general frame of reference for the problems connected to the.
SOCKET PROGRAMMING Presented By : Divya Sharma.
Introduction to TCP/IP networking
LWIP TCP/IP Stack 김백규.
Part I. Overview of Data Communications and Networking
TCP/IP Protocol Suite: Review
Ch 17 - Binding Protocol Addresses
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Computer Networks Protocols
NetPerL Seminar An Analysis of TCP Processing Overhead
Presentation transcript:

High Performance Computing & Communication Research Laboratory 12/11/1997 [1] Hyok Kim Performance Analysis of TCP/IP Data Send/Receive Processing Under UNIX Operating Systems

High Performance Computing & Communication Research Laboratory 12/11/1997 [2] Talk Outline ä Project overview ä Performance analysis of TCP/IP protocol ä Performance analysis of Parallel TCP/IP ä Bottlenecks in processing TCP/IP ä Performance analysis techniques ä Measurement tool and performance metrics ä Empirical results ä Future & on-going works ä Concluding remarks

High Performance Computing & Communication Research Laboratory 12/11/1997 [3] Project Overview ä H/W implementation of TCP/IP protocol ä Handling ATM traffic(155Mbps or higher) ä ATM interfacing ä Specification ä Design of TCP/IP protocol processor ä ATM interfacing ä PCI/AMBA interfacing ä API implementation for TCP/IP H/W ä Joint project with ä Hallym U. & Pusan National U. (major institute) ä Kwangwoon U. & Kyungpook National U.

High Performance Computing & Communication Research Laboratory 12/11/1997 [4] Internet Layering and Peer Model FTP client FTP server TCP IP data link driver data link driver data link protocol IP protocol FTP protocol TCP protocol medium application transport network link

High Performance Computing & Communication Research Laboratory 12/11/1997 [5] Bandwidth delivery by TCP/IP Application ATMFast Ethernet FDDI Bandwidth requirement Bandwidth supply Reasonable bandwidth delivery ? Application ATM Fast Ethernet FDDI TCP/IP

High Performance Computing & Communication Research Laboratory 12/11/1997 [6] Coarse Grain Architecture of Parallel TCP/IP

High Performance Computing & Communication Research Laboratory 12/11/1997 [7] Wnd. Sizing Wnd. Sizing Urgent request Urgent request Segment re-assembly Segment re-assembly TCP Error Check TCP Error Check TCP checksum TCP checksum Queue Flag test Flag test Security check Security check connection name check connection name check ACK check ACK check Status check Status check Wnd. check Wnd. check Application TCP Control Info. TCP Conn. Info. IP Layer Parallel Architecture of TCP Data Receiver

High Performance Computing & Communication Research Laboratory 12/11/1997 [8] Performance of TCP data receiver Performance of TCPReceive

High Performance Computing & Communication Research Laboratory 12/11/1997 [9] Performance of Parallel TCP/IP Estimated speed-up against sequential execution

High Performance Computing & Communication Research Laboratory 12/11/1997 [10] Bottlenecks in TCP/IP Processing ä data copies ä between user space and kernel space ä between kernel space and network device ä checksum calculation ä memory/timer management ä interaction between protocol and OS ä NOT the protocol itself

High Performance Computing & Communication Research Laboratory 12/11/1997 [11] Performance Measurement (I) ä S/W based measurement ä unacceptable perturbation due to interrupt handling or memory swapping ä H/W based measurement ä specially designed H/W or logic analyzer ä limited flexibility ä data acquisition only on execution time ä ex) MultiKron chip(project) by NIST ä Probabilistic Analysis : Queueing Theory

High Performance Computing & Communication Research Laboratory 12/11/1997 [12] Performance Measurement (II) ä Our measurement ä using counters in Intel Pentium processor ä time resolution is the same as system clock tick ä 166MHz -> 6ns ä 200MHz -> 5ns ä provides additional information ä memory access counts (memory bandwidth) ä number of H/W interrupts ä mis-aligned data memory references ä branches

High Performance Computing & Communication Research Laboratory 12/11/1997 [13] Performance measurement setup - sender’s part - Communicating partySystem under measurement connection write disconnect user process TCP IP data link socket (4)(5) (3)(6) (2)(7) (1) Isolated 10BaseT Ethernet Legends: (1) memory allocation and data copy (2) TCP processing (3) IP processing (4) data send to media (5) ACK arrives at datalink layer (6) ACK processing at IP (7) ACK processing at TCP socket initialization

High Performance Computing & Communication Research Laboratory 12/11/1997 [14] Performance Measurement Setup - receiver’s part - Communicating partySystem under measurement socket() bind() listen() accept() read() disconnect() user process TCP IP data link socket (1)(7) (2)(6) (3)(5) (4) Isolated 10BaseT Ethernet Legends: (1) Frame arrives at data link layer (2) IP processing (3) TCP processing (4) data copy from kernel space to user space (5) ACK construction at TCP (6) IP processing (7) data send to media

High Performance Computing & Communication Research Laboratory 12/11/1997 [15] Empirical Result (I) Cycle counts in TCP/IP send processing

High Performance Computing & Communication Research Laboratory 12/11/1997 [16] Empirical Result (II) Dynamic instruction counts in TCP/IP send processing

High Performance Computing & Communication Research Laboratory 12/11/1997 [17] Empirical Result (III) Memory access counts in TCP/IP send processing

High Performance Computing & Communication Research Laboratory 12/11/1997 [18] Empirical Result (IV) Cycle counts in TCP/IP receive processing

High Performance Computing & Communication Research Laboratory 12/11/1997 [19] Empirical Result (V) Dynamic Instruction counts in TCP/IP receive processing

High Performance Computing & Communication Research Laboratory 12/11/1997 [20] Empirical Result (VI) Memory access counts in TCP/IP receive processing

High Performance Computing & Communication Research Laboratory 12/11/1997 [21] Memory Bandwidth Requirement (I) ä “By matching the memory to the special needs of packet processing, ä one could achieve high performance at an acceptable cost”, by V. Jacobson.

High Performance Computing & Communication Research Laboratory 12/11/1997 [22] Memory Bandwidth Requirement (II) ä Then, how many memory accesses occur ? ä we measured it

High Performance Computing & Communication Research Laboratory 12/11/1997 [23] Pure TCP/IP performance * Calculation on 1440 bytes packet ä not considering data link latency ä considering data send/receive and ACK segment send/receive time only in TCP/IP layer

High Performance Computing & Communication Research Laboratory 12/11/1997 [24] From Empirical Results ä To enhance the performance of TCP/IP ä design of efficient interface between protocol stack and OS is required ä And How?

High Performance Computing & Communication Research Laboratory 12/11/1997 [25] Future & On-going Works ä Feasibility Study of ATM internetworking ä Analysis of ä ALL5 traffic ä signaling protocols ä commercial SAR chips & bus interfaces ä Internetworking technology ä LANE, IP over ATM, Multiprotocol over ATM ä Next Hop Resolution Protocol, etc. ä Development of TCP/IP H/W module ä now, Ethernet-based implementation

High Performance Computing & Communication Research Laboratory 12/11/1997 [26] Overview of TCP/IP H/W Implementation TCP timer module Checksum module Memory management Unit ARM Target System ä ARM7TDMI RISC processor ä AMBA expansion connectors ä FPGA implementation

High Performance Computing & Communication Research Laboratory 12/11/1997 [27] Duration Register ID Manager Lookup Table State Scheduler Expired & Reference Time Generator Timing Scheduler CAM Timer Record Memory Stack Manager Zero Detect Timer Management Module

High Performance Computing & Communication Research Laboratory 12/11/1997 [28] Conclusion ä OS overheads play major role in high performance TCP/IP processing ä Measurement of memory access counts ä estimation of memory bandwidth requirement ä H/W implementation is needed for time- consuming modules