Globus Striped GridFTP Framework and Server. Raj Kettimuthu, ANL and U. Chicago

Similar documents
GridFTP: A Data Transfer Protocol for the Grid

A Tutorial on Configuring and Deploying GridFTP for Managing Data Movement in Grid/HPC Environments

Iperf Tutorial. Jon Dugan Summer JointTechs 2010, Columbus, OH

High Performance Data-Transfers in Grid Environment using GridFTP over InfiniBand

D1.2 Network Load Balancing

VMWARE WHITE PAPER 1

Frequently Asked Questions

TCP Labs. WACREN Network Monitoring and Measurement Workshop Antoine Delvaux perfsonar developer

Implementing Network Attached Storage. Ken Fallon Bill Bullers Impactdata

TFTP TRIVIAL FILE TRANSFER PROTOCOL OVERVIEW OF TFTP, A VERY SIMPLE FILE TRANSFER PROTOCOL FOR SIMPLE AND CONSTRAINED DEVICES

IMPLEMENTING GREEN IT

Remote Access VPNs Performance Comparison between Windows Server 2003 and Fedora Core 6

Performance Analysis of IPv4 v/s IPv6 in Virtual Environment Using UBUNTU

Quantifying the Performance Degradation of IPv6 for TCP in Windows and Linux Networking

Grid Scheduling Dictionary of Terms and Keywords

Application Note. Windows 2000/XP TCP Tuning for High Bandwidth Networks. mguard smart mguard PCI mguard blade

Comparisons between HTCP and GridFTP over file transfer

Integration of Network Performance Monitoring Data at FTS3

Sockets vs. RDMA Interface over 10-Gigabit Networks: An In-depth Analysis of the Memory Traffic Bottleneck

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

TCP Offload Engines. As network interconnect speeds advance to Gigabit. Introduction to

Open Source File Transfers

UDT as an Alternative Transport Protocol for GridFTP

A Reliable and Fast Data Transfer for Grid Systems Using a Dynamic Firewall Configuration

Question: 3 When using Application Intelligence, Server Time may be defined as.

Design Issues in a Bare PC Web Server

Data Movement and Storage. Drew Dolgert and previous contributors

A Transport Protocol for Multimedia Wireless Sensor Networks

CHAPTER 3 PROBLEM STATEMENT AND RESEARCH METHODOLOGY

Transparent Optimization of Grid Server Selection with Real-Time Passive Network Measurements. Marcia Zangrilli and Bruce Lowekamp

Final for ECE374 05/06/13 Solution!!

Windows 8 SMB 2.2 File Sharing Performance

First Midterm for ECE374 03/09/12 Solution!!

UDR: UDT + RSYNC. Open Source Fast File Transfer. Allison Heath University of Chicago

Rapid Remote File System Benchmark on Long Fat Network and User ID Mapping Function Naoyuki FUJITA, Hirofumi OOKAWA

OpenFlow: Load Balancing in enterprise networks using Floodlight Controller

Distributed applications monitoring at system and network level

GridFTP GUI: An Easy and Efficient Way to Transfer Data in Grid

GridFTP: Protocol Extensions to FTP for the Grid

Client/Server Computing Distributed Processing, Client/Server, and Clusters

A Survey Study on Monitoring Service for Grid

Performance Evaluation of VMXNET3 Virtual Network Device VMware vsphere 4 build

Pump Up Your Network Server Performance with HP- UX

Overview of Computer Networks

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

Cisco Integrated Services Routers Performance Overview

CSCI 362 Computer and Network Security

DEPLOYMENT GUIDE Version 1.1. Configuring BIG-IP WOM with Oracle Database Data Guard, GoldenGate, Streams, and Recovery Manager

HUAWEI OceanStor Load Balancing Technical White Paper. Issue 01. Date HUAWEI TECHNOLOGIES CO., LTD.

GridFTP: Protocol Extensions to FTP for the Grid

Challenges of Sending Large Files Over Public Internet

Network Performance Optimisation and Load Balancing. Wulf Thannhaeuser

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Measure wireless network performance using testing tool iperf

The ENEA-EGEE site: Access to non-standard platforms

High Speed I/O Server Computing with InfiniBand

POSIX and Object Distributed Storage Systems

Overlapping Data Transfer With Application Execution on Clusters

Objectives of Lecture. Network Architecture. Protocols. Contents

JoramMQ, a distributed MQTT broker for the Internet of Things

Microsoft SQL Server 2012 on Cisco UCS with iscsi-based Storage Access in VMware ESX Virtualization Environment: Performance Study

Network Programming TDC 561

Network Probe. Figure 1.1 Cacti Utilization Graph

SIDN Server Measurements

Content Distribution Management

GlobalSCAPE DMZ Gateway, v1. User Guide

Lustre Networking BY PETER J. BRAAM

How Router Technology Shapes Inter-Cloud Computing Service Architecture for The Future Internet

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

Computer Networks/DV2 Lab

Applications. Network Application Performance Analysis. Laboratory. Objective. Overview

ANALYSIS OF GRID COMPUTING AS IT APPLIES TO HIGH VOLUME DOCUMENT PROCESSING AND OCR

What is CSG150 about? Fundamentals of Computer Networking. Course Outline. Lecture 1 Outline. Guevara Noubir noubir@ccs.neu.

Remote Graphical Visualization of Large Interactive Spatial Data

SAN/iQ Remote Copy Networking Requirements OPEN iscsi SANs 1

IT of SPIM Data Storage and Compression. EMBO Course - August 27th! Jeff Oegema, Peter Steinbach, Oscar Gonzalez

Smart Tips. Enabling WAN Load Balancing. Key Features. Network Diagram. Overview. Featured Products. WAN Failover. Enabling WAN Load Balancing Page 1

Network Attached Storage. Jinfeng Yang Oct/19/2015

Comparing the Network Performance of Windows File Sharing Environments

Stream Processing on GPUs Using Distributed Multimedia Middleware

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

Axceleon s CloudFuzion Turbocharges 3D Rendering On Amazon s EC2

CMS Tier-3 cluster at NISER. Dr. Tania Moulik

Monitoring Clusters and Grids

Building High-Performance iscsi SAN Configurations. An Alacritech and McDATA Technical Note

Using Linux Clusters as VoD Servers

Transcription:

Globus Striped GridFTP Framework and Server Raj Kettimuthu, ANL and U. Chicago

Outline Introduction Features Motivation Architecture Globus XIO Experimental Results 3 August 2005 The Ohio State University 2

What is GridFTP? In Grid environments, access to distributed data is very important Distributed scientific and engineering applications require: Transfers of large amounts of data between storage systems, and Access to large amounts of data by many geographically distributed applications and users for analysis, visualization etc GridFTP - a general-purpose mechanism for secure, reliable and high performance data movement. 3 August 2005 The Ohio State University 3

Features Standard FTP features get/put etc, third party control of data transfer User at one site to initiate, monitor and control data transfer operation between two other sites Authentication, data integrity, data confidentiality Support Generic Security Services (GSS)- API authentication of the connections Support user-controlled levels of data integrity and/or confidentiality 3 August 2005 The Ohio State University 4

Features Parallel data transfer Multiple transport streams between a single source and destination Striped data transfer 1 or more transport streams between m network endpoints on the sending side and n network endpoints on the receiving side 3 August 2005 The Ohio State University 5

Partial file transfer Features Some applications can benefit from transferring portions of file For example, analyses that require access to subsets of massive object-oriented database files Manual/Automatic control of TCP buffer sizes Support for reliable and restartable data transfer 3 August 2005 The Ohio State University 6

Motivation Continued commoditization of end system devices means the data sources and sinks are often clusters A common configuration might have individual nodes connected by 1 Gbit/s Ethernet connection to a switch connected to external network at 10 Gbit/s or faster Striped data movement - data distributed across a set of computers at one end is transferred to remote set of computers 3 August 2005 The Ohio State University 7

Motivation Data sources and sinks come in many shapes and sizes Clusters with local disks, clusters with parallel file system, geographically distributed data sources, archival storage systems Enable clients to access such sources and sinks via a uniform interface Make it easy to adapt our system to support different sources and sinks 3 August 2005 The Ohio State University 8

Motivation Standard protocol for network data transfer remains TCP. TCP s congestion control algorithm can lead to poor performance Particularly in default configurations and on paths with high bandwidth and high round trip time Solutions include: Careful tuning of TCP parameters, multiple TCP connections and substitution of alternate UDP based reliable protocols We want to support such alternatives 3 August 2005 The Ohio State University 9

Architecture GridFTP (and normal FTP) use (at least) two separate socket connections: A control channel for carrying the commands and responses A Data Channel for actually moving the data GridFTP (and normal FTP) has 3 distinct components: Client and server protocol interpreters which handle control channel protocol Data Transfer Process which handles the accessing of actual data and its movement via the data channel 3 August 2005 The Ohio State University 10

Architecture These components can be combined in various ways to create servers with different capabilities. For example, combining the server PI and DTP components in one process creates a conventional FTP server A striped server might use one server PI on the head node of a cluster and a DTP on all other nodes. 3 August 2005 The Ohio State University 11

Globus GridFTP Architecture Info on transfer: restart markers, performance markers, etc. Server PI optionally processes these, then sends them to the client PI Server PI Control Channels Client PI Server PI Internal IPC API Internal IPC API DTP Data Channel DTP Description of transfer: completely server -internal communication. Protocol is unspecified and left up to the implementation. 3 August 2005 The Ohio State University 12

Architecture The server PI handles the control channel exchange. In order for a client to contact a GridFTP server Either the server PI must be running as a daemon and listening on a well known port (2811 for GridFTP), or Some other service (such as inetd) must be listening on the port and be configured to invoke the server PI. The client PI then carries out its protocol exchange with the server PI. 3 August 2005 The Ohio State University 13

Architecture When the server PI receives a command that requires DTP activity, the server PI passes the description of the transfer to DTP After that, DTP can carry out the transfer on its own. The server PI then simply acts as a relay for transfer status information. Performance markers, restart markers, etc. 3 August 2005 The Ohio State University 14

Architecture PI-to-DTP communications are internal to the server Protocol used can evolve with no impact on the client. The data channel communication structure is governed by data layout. If the number of nodes at both ends is equal, each node communicates with just one other node. Otherwise, each sender makes a connection to each receiver, and sends data based on data offsets. 3 August 2005 The Ohio State University 15

3 August 2005 The Ohio State University 16

Data transfer pipeline Data Transfer Process is architecturally, 3 distinct pieces: Data Access Module, Data processing module and Data Channel Protocol Module Data source or sink Data Access Module Data Processing Module Data Channel Protocol Module Data channel 3 August 2005 The Ohio State University 17

Data access module Number of storage systems in use by the scientific and engineering community Distributed Parallel Storage System (DPSS) High Performance Storage System (HPSS) Distributed File System (DFS) Storage Resource Broker (SRB) HDF5 Use incompatible protocols for accessing data and require the use of their own clients 3 August 2005 The Ohio State University 18

Data access module It provides a modular pluggable interface to data storage systems. Conceptually, the data access module is very simple. It consist of several function signatures and a set of semantics. When a new module is created, programmer implements the functions to provide the semantics associated with them. 3 August 2005 The Ohio State University 19

Data processing module The data processing module - provides ability to manipulate the data prior to transmission. Compression, on-the-fly concatenation of multiple files etc Currently handled via the data access module In future we plan to make this a separate module 3 August 2005 The Ohio State University 20

Data channel protocol module This module handles the operations required to fetch data from, or send data to, the data channel. A single server may support multiple data channel protocols the MODE command is used to select the protocol to be used for a particular transfer. We use Globus extensible Input/Output (XIO) system as the data channel protocol module interface Currently support two bindings: Stream-mode TCP and Extended Block Mode TCP 3 August 2005 The Ohio State University 21

Extended block mode Striped and parallel data transfer require support for out-of-order data delivery Extended block mode supports out-ofsequence data delivery Extended block mode header Descriptor 8 bits Byte Count 64 bits Offset 64 bits Descriptor is used to indicate if this block is a EOD marker, restart marker etc 3 August 2005 The Ohio State University 22

Globus XIO Simple Open/Close/Read/Write API Make single API do many types of IO Many Grid IO needs can be treated as a stream of bytes Open/close/read/write functionality satisfies most requirements Specific drivers for specific protocols/ devices 3 August 2005 The Ohio State University 23

Typical approach 3 August 2005 The Ohio State University 24

Globus XIO approach 3 August 2005 The Ohio State University 25

Three settings Experimental results LAN - 0.2 msec RTT and 622 Mbit/s MAN - 2.2 msec RTT and 1 Gbit/s WAN - 60 msec RTT and 30 Gbit/s MAN - Distributed Optical Testbed in the Chicago area WAN - TeraGrid link between NCSA in Illinois and SDSC in California - each individual has a 1Gbit/s bottleneck link 3 August 2005 The Ohio State University 26

Experimental results - LAN 700 bandwidth (Mbit/s) 600 500 400 300 200 100 iperf globus disk globus mem bonnie 0 0 10 20 30 40 number of streams 3 August 2005 The Ohio State University 27

Experimental results - MAN bandwidth (Mbit/s) 1000 900 800 700 600 500 400 300 200 100 0 iperf globus mem globus disk bonnie 0 10 20 30 40 number of streams 3 August 2005 The Ohio State University 28

Experimental results - WAN 1400 1200 bandwidth (Mbit/s) 1000 800 600 400 200 iperf globus disk globus mem bonnie 0 0 10 20 30 40 number of streams 3 August 2005 The Ohio State University 29

Memory to Memory Striping Performance 30000 25000 Bandwidth (Mbit/s) 20000 15000 10000 5000 0 0 10 20 30 40 50 60 70 Degree of Striping # Stream = 1 # Stream = 2 # Stream = 4 # Stream = 8 # Stream = 16 # Stream = 32 3 August 2005 The Ohio State University 30

Disk to Disk Striping Performance Bandwidth (Mbit/s) 20000 18000 16000 14000 12000 10000 8000 6000 4000 2000 0 0 10 20 30 40 50 60 70 Degree of Striping # Stream = 1 # Stream = 2 # Stream = 4 # Stream = 8 # Stream = 16 # Stream = 32 3 August 2005 The Ohio State University 31

Scalability tests Evaluate performance as a function of the number of clients DiPerf test framework to deploy the clients Ran server on a 2-processor 1125 MHz x86 machine running Linux 2.6.8.1 1.5 GB memory and 2 GB swap space 1 Gbit/s Ethernet network connection and 1500 B MTU Clients created on hosts distributed over PlanetLab and at the University of Chicago (UofC) 3 August 2005 The Ohio State University 32

2000 1800 1600 1400 1200 1000 800 600 400 200 Scalability Results _ Load (concurrent clients) _ Memory (Mbytes) CPU % _ Throughput (Mbyte/s) Response Time (s) 100 90 80 70 60 50 40 30 20 10 0 0 500 1000 1500 2000 2500 3000 3500 Time (sec) Left axis - load, response time, memory allocated Right axis - Throughput and CPU % 3 August 2005 The Ohio State University 33 0

Scalability results 1800 clients mapped in a round robin fashion on 100 PlanetLab hosts and 30 UofC hosts A new client created once a second and ran for 2400 seconds During this time, repeatedly requests the transfer of 10 Mbyte file from server s disk to client s /dev/null Total of 150.7 Gbytes transferred in 15,428 transfers 3 August 2005 The Ohio State University 34

Scalability results Server sustained 1800 concurrent requests with 70% CPU and 0.94 Mbyte memory per request CPU usage, throughput, response time remain reasonable even when allocated memory exceeds physical memory Meaning paging is occuring 3 August 2005 The Ohio State University 35