UDT as an Alternative Transport Protocol for GridFTP Raj Kettimuthu Argonne National Laboratory The University of Chicago.

Slides:



Advertisements
Similar presentations
The Globus Striped GridFTP Framework and Server Bill Allcock 1 (presenting) John Bresnahan 1 Raj Kettimuthu 1 Mike Link 2 Catalin Dumitrescu 2 Ioan Raicu.
Advertisements

Appropriateness of Transport Mechanisms in Data Grid Middleware Rajkumar Kettimuthu 1,3, Sanjay Hegde 1,2, William Allcock 1, John Bresnahan 1 1 Mathematics.
GridFTP Challenges In Data Transport John Bresnahan Argonne National Laboratory The University of Chicago.
Cross-site data transfer on TeraGrid using GridFTP TeraGrid06 Institute User Introduction to TeraGrid June 12 th by Krishna Muriki
1 Optiputer High Performance Transport Protocols & Implementation Plans Ryan X. Wu, Andrew A. Chien, Eric Weigle, Nut Taesombut CSAG, CSE, UCSD 01/25/2005.
Current Testbed : 100 GE 2 sites (NERSC, ANL) with 3 nodes each. Each node with 4 x 10 GE NICs Measure various overheads from protocols and file sizes.
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Distributed System Architectures.
Restricted Slow-Start for TCP William Allcock 1,2, Sanjay Hegde 3 and Rajkumar Kettimuthu 1,2 1 Argonne National Laboratory 2 The University of Chicago.
Csc333 Data communication & Networking Credit: 2.
GridFTP: File Transfer Protocol in Grid Computing Networks
VIA and Its Extension To TCP/IP Network Yingping Lu Based on Paper “Queue Pair IP, …” by Philip Buonadonna.
04/26/2004CSCI 315 Operating Systems Design1 Computer Networks.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
Data Communications and Networks
GridFTP Guy Warner, NeSC Training.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
Experiences in Design and Implementation of a High Performance Transport Protocol Yunhong Gu, Xinwei Hong, and Robert L. Grossman National Center for Data.
Globus Striped GridFTP Framework and Server Raj Kettimuthu, ANL and U. Chicago.
Globus GridFTP: What’s New in 2007 Raj Kettimuthu Argonne National Laboratory and The University of Chicago.
Reliable Data Movement Framework for Distributed Science Environments Raj Kettimuthu Argonne National Laboratory and The University of Chicago.
DataGrid Middleware: Enabling Big Science on Big Data One of the most demanding and important challenges that we face as we attempt to construct the distributed.
Our Last Class!!  summary  what does the future look like?
Implementation of Test Bed for Dynamic Channel Selection In WLANs Communications Laboratory TKK/HUT.
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
Secure, Collaborative, Web Service enabled and Bittorrent Inspired High-speed Scientific Data Transfer Framework.
Optimizing UDP-based Protocol Implementations Yunhong Gu and Robert L. Grossman Presenter: Michal Sabala National Center for Data Mining.
UDT: UDP based Data Transfer Yunhong Gu & Robert Grossman Laboratory for Advanced Computing University of Illinois at Chicago.
UDT: UDP based Data Transfer Protocol, Results, and Implementation Experiences Yunhong Gu & Robert Grossman Laboratory for Advanced Computing / Univ. of.
The Globus GridFTP Framework and Server John Bresnahan, Mike Link and Raj Kettimuthu (Presenting) Math & Computer Science Division, Argonne National Laboratory,
Current Testbed : 100 GE 2 sites (NERSC, ANL) with 3 nodes each. Each node with 4 x 10 GE NICs Measure various overheads from protocols and file sizes.
Reliable Data Movement using Globus GridFTP and RFT: New Developments in 2008 John Bresnahan Michael Link Raj Kettimuthu Argonne National Laboratory and.
Globus GridFTP and RFT: An Overview and New Features Raj Kettimuthu Argonne National Laboratory and The University of Chicago.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Managed Object Placement Service John Bresnahan, Mike Link and Raj Kettimuthu (Presenting) Argonne National Lab.
Communicating Security Assertions over the GridFTP Control Channel Rajkumar Kettimuthu 1,2, Liu Wantao 3,4, Frank Siebenlist 1,2 and Ian Foster 1,2,3 1.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
Rate Control Rate control tunes the packet sending rate. No more than one packet can be sent during each packet sending period. Additive Increase: Every.
Udt.sourceforge.net 1 :: 23 Supporting Configurable Congestion Control in Data Transport Services Yunhong Gu and Robert L. Grossman Laboratory for Advanced.
LEGS: A WSRF Service to Estimate Latency between Arbitrary Hosts on the Internet R.Vijayprasanth 1, R. Kavithaa 2,3 and Raj Kettimuthu 2,3 1 Coimbatore.
GridFTP GUI: An Easy and Efficient Way to Transfer Data in Grid
An Introduction to UDT Internet2 Spring Meeting Yunhong Gu Robert L. Grossman (Advisor) National Center for Data Mining University.
CEOS Working Group on Information Systems and Services - 1 Data Services Task Team Discussions on GRID and GRIDftp Stuart Doescher, USGS WGISS-15 May 2003.
GridFTP Richard Hopkins
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Connecting to the Network Introduction to Networking Concepts.
Agent Based Transaction System CS790: Dr. Bruce Land Sanish Mondkar Sandeep Chakravarty.
A Managed Object Placement Service (MOPS) using NEST and GridFTP Dr. Dan Fraser John Bresnahan, Nick LeRoy, Mike Link, Miron Livny, Raj Kettimuthu SCIDAC.
AERG 2007Grid Data Management1 Grid Data Management GridFTP Carolina León Carri Ben Clifford (OSG)
The Globus eXtensible Input/Output System (XIO): A protocol independent IO system for the Grid Bill Allcock, John Bresnahan, Raj Kettimuthu and Joe Link.
ALCF Argonne Leadership Computing Facility GridFTP Roadmap Bill Allcock (on behalf of the GridFTP team) Argonne National Laboratory.
Globus Data Storage Interface (DSI) - Enabling Easy Access to Grid Datasets Raj Kettimuthu, ANL and U. Chicago DIALOGUE Workshop August 2, 2005.
GridFTP Guy Warner, NeSC Training Team.
1 GridFTP and SRB Guy Warner Training, Outreach and Education Team, Edinburgh e-Science.
Protocols and Services for Distributed Data- Intensive Science Bill Allcock, ANL ACAT Conference 19 Oct 2000 Fermi National Accelerator Laboratory Contributors:
INDIANAUNIVERSITYINDIANAUNIVERSITY Tsunami File Transfer Protocol Presentation by ANML January 2003.
New Development Efforts in GridFTP Raj Kettimuthu Math & Computer Science Division, Argonne National Laboratory, Argonne, IL 60439, U.S.A.
An Analysis of AIMD Algorithm with Decreasing Increases Yunhong Gu, Xinwei Hong, and Robert L. Grossman National Center for Data Mining.
A Sneak Peak of What’s New in Globus GridFTP John Bresnahan Michael Link Raj Kettimuthu (Presenting) Argonne National Laboratory and The University of.
Etere Video Assist The last step for a complete tapeless workflow Presented by: Emanuele Porfiri.
GlobusWORLD 2006Globus XIO1 The Globus Project™ Argonne National Laboratory USC Information Sciences Institute Copyright (c) 2002.
DART SI-8: Pilot long-distance high speed and secure data transfer between the Repositories DART Workshop on Infrastructure Chief Investigator: Dr. Asad.
NeST: Network Storage Flexible Commodity Storage Appliances
COMP 431 Internet Services & Protocols
Study course: “Computing clusters, grids and clouds” Andrey Y. Shevel
File Transfer Issues with TCP Acceleration with FileCatalyst
Network Architecture for Cyberspace
Beyond FTP & hard drives: Accelerating LAN file transfers
Review of Internet Protocols Transport Layer
Evaluation of Objectivity/AMS on the Wide Area Network
Presentation transcript:

UDT as an Alternative Transport Protocol for GridFTP Raj Kettimuthu Argonne National Laboratory The University of Chicago

Outline GridFTP GridFTP Architecture Globus XIO UDT GridFTP/UDT integration Experimental results

GridFTP A secure, robust, fast, efficient, standards based, widely accepted data transfer protocol We also supply a reference implementation:  Server  Client tools (globus-url-copy)  Development Libraries Multiple independent implementations can interoperate  University of Virginia and Fermi Lab have home grown servers that work with ours. Lots of people have developed clients independent of the Globus Project.

GridFTP l Two channel protocol like FTP l Control Channel u Communication link (TCP) over which commands and responses flow u Low bandwidth; encrypted and integrity protected by default l Data Channel u Communication link(s) over which the actual data of interest flows u High Bandwidth; authenticated by default; encryption and integrity protection optional

Striping GridFTP offers a powerful feature called striped transfers (cluster-to-cluster transfers)

GridFTP Architecture 6 Server PI DTP Server PI DTP Data Channels Client PI Internal IPC API Stripes/Backends Internal IPC API Control Channels DSI

GridFTP Architecture 7 GridFTP Data Transfer Pipeline

Globus XIO 8

9 Grid Communication Geographically Distributed Resources Varying Networks Characteristics  LAN, WAN, LFN, Dedicated, Shared, QOS Varying Network Protocols  HTTP, UDT, TCP, RBUDP, etc.  Researching making newer and faster Varying Conditions  Congested/Idle

10 Varying Environments Application RBUDP Dedicated LFN Infiniband UDT TCP Shared

Globus XIO 11 Framework to compose different protocols Provides a unified interface open/close/read/writ e Driver interface to hook 3rd party protocol libraries

12 Varying Networks Application Dedicated LFN Shared Globus XIO UDT Infiniband TCP Driver

13 Stack An arrangement of drivers Transport  Exactly one per stack  Must be on the bottom Transform  Zero or many per stack Example Driver Stack TCP net SSL ZIP

14 Stack An arrangement of drivers Transport  Exactly one per stack  Must be on the bottom Transform  Zero or many per stack Example Driver Stack TCP net SSL

15 Stack An arrangement of drivers Transport  Exactly one per stack  Must be on the bottom Transform  Zero or many per stack Example Driver Stack UDT net SSL

UDT 16

UDT UDT: UDP based Data Transfer  Application level transport protocol, over UDP with reliability, congestion, and flow control  Implementation: Open source C++ library Rate based congestion control (Rate Control)  RC tunes the packet sending period.  RC is triggered periodically. Window based flow control (Flow Control)  FC limits the number of unacknowledged packets.  FC is triggered on each received ACK. 17

UDT AIMD: Increase parameter is related to link capacity and current sending rate; Decrease factor is 1/9, but not decrease for all loss events. Link capacity is probed by packet pair, which is sampled UDT data packets.  Every 16th data packet and it successor packet are sent back to back to form a packet pair.  The receiver uses a median filter on the interval between the arrival times of each packet pair to estimate link capacity. 18 ……

UDT 19

GridFTP/UDT Integration 20

21 Wrapblock Driver Development Easy way to write XIO Drivers  Create from third party libraries. Blocking API  Thread pooling/event callbacks to morph async to sync  Recommend threaded builds UDT driver developed using the wrapblock feature

22 Interface functions A set of function signatures  open/close/read/write implemented by driver  cntl() functions for driver specific hooks  Wrapped into a structure and registered with Globus XIO Calls to these functions are made expecting specific behaviours  Ex: the read() interface function should produce some data, and the write() interface function should consume data, etc

23 Example Interface Functions static globus_result_t globus_l_xio_udt_ref_read( void * driver_specific_handle, const globus_xio_iovec_t * iovec, int iovec_count, globus_size_t * nbytes) { globus_result_t result; xio_l_udt_ref_handle_t * handle; handle = (xio_l_udt_ref_handle_t *) driver_specific_handle; *nbytes = (globus_size_t) UDT::recv( handle->sock, (char *)iovec[0].iov_base, iovec[0].iov_len, 0); /* need to figure out eof */ if(*nbytes <= 0) { result = GlobusXIOUdtError("UDT::recv failed"); goto error; } return GLOBUS_SUCCESS; error: return result; } static globus_result_t globus_l_xio_udt_ref_write( void * driver_specific_handle, const globus_xio_iovec_t * iovec, int iovec_count, globus_size_t * nbytes) { globus_result_t result; xio_l_udt_ref_handle_t * handle; handle = (xio_l_udt_ref_handle_t *) driver_specific_handle; *nbytes = (globus_size_t) UDT::send( handle->sock, (char*)iovec[0].iov_base, iovec[0].iov_len, 0); if(*nbytes < 0) { result = GlobusXIOUdtError("UDT::send failed"); goto error; } return GLOBUS_SUCCESS; error: return result; }

Throughput achieved using various transport mechanisms

Impact of concurrent flows Japan-ORNL testbedBMI-Japan testbed

26 Resource Utilization of UDT vs TCP The performance of TCP and UDT comparable on TeraGrid network between ANL and ORNL  Both TCP and UDT achieved a throughput around 700 Mbit/s on this testbed. The CPU utilization for TCP transfers was in the range of 30–50%, whereas for UDT transfers it was around 80% The memory consumption was around 0.2% for TCP and 1% for UDT

27 Questions