Networking for the Grid Yee-Ting Li eScience Summer Edinburgh.

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
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.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Internet Traffic Patterns Learning outcomes –Be aware of how information is transmitted on the Internet –Understand the concept of Internet traffic –Identify.
1 689 Lecture 2 Review of Last Lecture Networking basics TCP/UDP review.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
Data Communication and Networks
Transmission Control Protocol (TCP) and Packet-Switching Hardware Devang Parekh EE290F 4/15/04.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
Reduced TCP Window Size for VoIP in Legacy LAN Environments Nikolaus Färber, Bernd Girod, Balaji Prabhakar.
Internetworking Fundamentals (Lecture #2) Andres Rengifo Copyright 2008.
Ch. 28 Q and A IS 333 Spring Q1 Q: What is network latency? 1.Changes in delay and duration of the changes 2.time required to transfer data across.
1 CMSCD1011 Introduction to Computer Audio Lecture 10: Streaming audio for Internet transmission Dr David England School of Computing and Mathematical.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
GridFTP Guy Warner, NeSC Training.
KEK Network Qi Fazhi KEK SW L2/L3 Switch for outside connections Central L2/L3 Switch A Netscreen Firewall Super Sinet Router 10GbE 2 x GbE IDS.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Presentation on Osi & TCP/IP MODEL
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
These materials are licensed under the Creative Commons Attribution-Noncommercial 3.0 Unported license (
1 Version 3.0 Module 11 TCP Application and Transport.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Implementing High Speed TCP (aka Sally Floyd’s) Yee-Ting Li & Gareth Fairey 1 st October 2002 DataTAG CERN (Kinda!)
GridNM Network Monitoring Architecture (and a bit about my phd) Yee-Ting Li, 1 st Year UCL, 17 th June 2002.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
CS332, Ch. 26: TCP Victor Norman Calvin College 1.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, , WWW) Reliable Stream Transport (TCP) Connectionless Packet Delivery.
An XML Schema for NMWG Yee-Ting Li, UCL. Metrics All results from Network Monitoring stored in some format All results from Network Monitoring stored.
Experience with Loss-Based Congestion Controlled TCP Stacks Yee-Ting Li University College London.
Computer Security Workshops Networking 101. Reasons To Know Networking In Regard to Computer Security To understand the flow of information on the Internet.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
1 Mao W07 Midterm Review EECS 489 Computer Networks Z. Morley Mao Monday Feb 19, 2007 Acknowledgement: Some.
Requirements for Simulation and Modeling Tools Sally Floyd NSF Workshop August 2005.
Iperf Quick Mode Ajay Tirumala & Les Cottrell. Sep 12, 2002 Iperf Quick Mode at LBL – Les Cottrell & Ajay Tirumala Iperf QUICK Mode Problem – Current.
What is TCP? Connection-oriented reliable transfer Stream paradigm
Internet multimedia: simplest approach audio, video not streamed: r no, “pipelining,” long delays until playout! r audio or video stored in file r files.
Computer Networking Lecture 18 – More TCP & Congestion Control.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks TCP.
Mr. Mark Welton.  Quality of Service is deployed to prevent data from saturating a link to the point that other data cannot gain access to it  QoS allows.
Transport Protocols.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Midterm Review Chapter 1: Introduction Chapter 2: Application Layer
79 Sidevõrgud IRT 4060/ IRT 0020 vooruloeng 8 / 3. nov 2004 Vooülekanne Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst.
Final EU Review - 24/03/2004 DataTAG is a project funded by the European Commission under contract IST Richard Hughes-Jones The University of.
GridFTP Guy Warner, NeSC Training Team.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Connect communicate collaborate Performance Metrics & Basic Tools Robert Stoy, DFN EGI TF, Madrid September 2013.
BDTS and Its Evaluation on IGTMD link C. Chen, S. Soudan, M. Pasin, B. Chen, D. Divakaran, P. Primet CC-IN2P3, LIP ENS-Lyon
Chapter 28 Q and A IS 333 Spring A quiz question Q: What is network latency? 1.Changes in delay and duration of the changes 2.time required to transfer.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI transport layer CCNA Exploration Semester 1 – Chapter 4.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
The Transport Layer Implementation Services Functions Protocols
The Transport Layer Congestion Control & UDP
Chapter 3 outline 3.1 transport-layer services
Chapter 3 outline 3.1 Transport-layer services
Transport Protocols over Circuits/VCs
SCTP v/s TCP – A Comparison of Transport Protocols for Web Traffic
Congestion Control, Internet transport protocols: udp
Lecture 19 – TCP Performance
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
TCP over SoNIC Abhishek Kumar Maurya
IT351: Mobile & Wireless Computing
TCP Congestion Control
Chapter 3 outline 3.1 Transport-layer services
Presentation transcript:

Networking for the Grid Yee-Ting Li eScience Summer Edinburgh

What the GRID is Worldwide Distributed System Worldwide Distributed System Interconnected with ‘networks’ Interconnected with ‘networks’ Balancing processors, storage and network utilization Balancing processors, storage and network utilization Networking is important to make GRID work Networking is important to make GRID work

Networking Important! Only way two grid nodes can communicate with each other Only way two grid nodes can communicate with each other Need ways of determining how ‘efficiently’ they talk Need ways of determining how ‘efficiently’ they talk Focus on: Focus on: –The characterising how they talk –The language they use to talk

Part 1 Networking Networking Networking Monitoring Networking Monitoring –Networks are also transient –Network performance also varies as you’re sharing with n million other users Sometimes you can notice periodic patterns – sometimes you can’t Sometimes you can notice periodic patterns – sometimes you can’t –Difficult to analyse and create trends/predictions –Show steps towards…

Networking 101 Networking straight forward Networking straight forward Just connect to the network and it works! Just connect to the network and it works! HA! HA!

Networking Complex? Get’s more complex! Complex? Get’s more complex! Each node has it’s own scheduling priorities Each node has it’s own scheduling priorities Routers must serve trillions of data units per second! Routers must serve trillions of data units per second!

Networking Complex stack from which data has to flow to get onto network Complex stack from which data has to flow to get onto network Each node on the network also has their own stacks Each node on the network also has their own stacks Routers have IPR on stacks – no one knows what Cisco stuff looks like! Routers have IPR on stacks – no one knows what Cisco stuff looks like!

Example Metrics Connectivity Connectivity Delay Delay –One-way delay –Two-way delay Throughput / goodput Throughput / goodput Network path Network path Loss Loss Jitter Jitter

Metrics Example Video Conferencing Video Conferencing –Needs predictable bit rate –Doesn’t usually matter if bit rate changes too much –Needs constant jitter –Low one-way delay preferable FTP FTP –Needs reliable transport –Throughput depends on urgency of data –Jitter and delay don’t matter

Network Monitoring Uses Monitoring is measuring over long periods of time Monitoring is measuring over long periods of time Gives an indication of network performance over time – a baseline Gives an indication of network performance over time – a baseline Allows comparison of different tools for analysis Allows comparison of different tools for analysis Allows analysis of how different protocols behave in different conditions – in real life Allows analysis of how different protocols behave in different conditions – in real life Allows ‘tuning’ of existing protocols to make most out of network Allows ‘tuning’ of existing protocols to make most out of network

Possible Users of a NM Web Service Network Managers Network Managers –See how much bandwidth is being used Network Analysts Network Analysts –Make things faster and better! Resource Brokers Resource Brokers Broker to determine where to send jobs – Network Cost Broker to determine where to send jobs – Network Cost Bandwidth Brokers Bandwidth Brokers –Allocate bandwidth depending on current network state Replication Managers Replication Managers –Distribute data only when network is not busy QoS Brokers (aka Managed bandwidth Services) QoS Brokers (aka Managed bandwidth Services) –Universal language for intercommunication..? Next Generation FTP Next Generation FTP –First look up historical throughputs before sending to determine best path

GridNM Architecture for monitoring the network Architecture for monitoring the network Backend – collects data for presentation Backend – collects data for presentation Logs metrics in ASCII log files on a single host Logs metrics in ASCII log files on a single host Allows mesh measurements – all nodes performs measurements to al other nodes Allows mesh measurements – all nodes performs measurements to al other nodes Uses standard UNIX infrastructure – ssh Uses standard UNIX infrastructure – ssh –Should be easily adaptable to using Globus certifications once interactive processing is introduced in EDG.

GridNM (cont…) Uses existing (and future tools) to collect metrics Uses existing (and future tools) to collect metrics Modular - uses XML to describe available resources Modular - uses XML to describe available resources –Hosts –Tools Locks hosts if under measurement – prevents other tests affecting metrics Locks hosts if under measurement – prevents other tests affecting metrics Currently monitoring 6 sites around Europe using 5 tools Currently monitoring 6 sites around Europe using 5 tools

GridNM ‘plot’

Web Service Network Monitoring GridNM just one Network Monitoring Program GridNM just one Network Monitoring Program Many different programs out there! Many different programs out there! Unify data exchange between different monitoring infrastructures Unify data exchange between different monitoring infrastructures

piPEs Internet2 e2ePI Architecture for network monitoring Internet2 e2ePI Architecture for network monitoring Defines information flow to diagnose networks and hosts performance – white paper Defines information flow to diagnose networks and hosts performance – white paper Incorporates a ‘finger pointing’ mechanism to identify poor performers Incorporates a ‘finger pointing’ mechanism to identify poor performers Ideal starting point! Ideal starting point! BUT… found out about it too late… BUT… found out about it too late… Currently investigating implementation with SLAC software + web service as possible implementation of piPEs software Currently investigating implementation with SLAC software + web service as possible implementation of piPEs software

GGF NMWG Defines characteristics that are just the values that we are interested in Defines characteristics that are just the values that we are interested in Defines classes of metrics, e.g. bandwidth, delay etc. that these characteristics report Defines classes of metrics, e.g. bandwidth, delay etc. that these characteristics report Defines singleton and derived characteristics Defines singleton and derived characteristics Defines samples of data and their inherent sampling patterns Defines samples of data and their inherent sampling patterns Timestamps Timestamps Still in draft form… Still in draft form…

GGF NMWG cont. / Schema Design As it’s all in XML, designing a XML schema to describe ‘objects’ to be passed around As it’s all in XML, designing a XML schema to describe ‘objects’ to be passed around XML Schema Document (XSD) XML Schema Document (XSD) Focusing actually implementing what the NMWG document says… and doesn’t say… Focusing actually implementing what the NMWG document says… and doesn’t say… Note: We are also tackling this from a pure OO design too – however, due to technical differences between objects in C++, Java and SOAP/XML then there may be issues to overcome… Note: We are also tackling this from a pure OO design too – however, due to technical differences between objects in C++, Java and SOAP/XML then there may be issues to overcome…

Part 2 Network Communication Languages Network Communication Languages Known as transport protocols - determines how applications put traffic into the network Known as transport protocols - determines how applications put traffic into the network Sits on top of IP – common language of the internet Sits on top of IP – common language of the internet

Transport Level Protocols TCP (HTTP, FTP, GridFTP) used for file transfer TCP (HTTP, FTP, GridFTP) used for file transfer –Gives guarantee on delivery –All data is copied precisely –Performance can be poor –Respects other internet users UDP (Real, H323) used for video conferencing UDP (Real, H323) used for video conferencing –Gives no guarantees on delivery –Data may be incomplete –Performance good –Doesn’t respect other internet users

UDP vs TCP Udp: min=274, max=565, ave=493, stdev=43 Udp: min=274, max=565, ave=493, stdev=43 Tcp: min=37, max=292, ave=195, stdev=40 Tcp: min=37, max=292, ave=195, stdev=40 Summary: tcp is rubbish! – why? Summary: tcp is rubbish! – why?

Memory and Disk transfers Iperf TCP Mbits/s File copy disk-to-disk Fast Ethernet OC3 Disk limited Over 60Mbits/s iperf >> file copy Les Cottrell, SLAC

What does TCP do? TCP retransmits lost data TCP retransmits lost data Even retransmits data it ‘thinks’ has been lost! Even retransmits data it ‘thinks’ has been lost! Needs and uses a ‘windowing’ system Needs and uses a ‘windowing’ system –Uses ACKnowledgements from reciever –Grows a Congestion Window ‘cwnd’ to determine the size of window Model: Model: –Tap is independent of Tank size –Tank filled by application –Valve opening (data rate) determined by feedback from network –Small tanks mean small data rate –Large tanks mean larger data rate Socket buffer size TCP Protocol Network

TCP socket buffer sizes Iperf observations: 490 Iperf observations: 490 Standard socket buffer graph Standard socket buffer graph –Shows linear(ish) region followed by plateau Optimal socket buffer size just over 2mB Optimal socket buffer size just over 2mB

Retransmitted Data Graph shows the amount of retransmitted data against the throughput Graph shows the amount of retransmitted data against the throughput Retransmitted data is due to loss on the network Retransmitted data is due to loss on the network General case ACK’s have to timeout before resending General case ACK’s have to timeout before resending We get more retransmitted data for low throughputs with large windows We get more retransmitted data for low throughputs with large windows

Measuring Performance of Transport Level Protocols Need to identify what we want to measure – the metrics. Need to identify what we want to measure – the metrics. Dependant on the use of the transport protocol. Need to analyse application level usage Dependant on the use of the transport protocol. Need to analyse application level usage For Grid: For Grid: –Movement of ‘transient’ data File Transfer and Replication File Transfer and Replication process jobs or ‘sandboxes’ process jobs or ‘sandboxes’ –Movement of Real-Time Data Video Conferencing – Access Grid Video Conferencing – Access Grid Real-Time applications Real-Time applications

Web 100 & TCP OSI states that we should not know anything about the separate layers OSI states that we should not know anything about the separate layers How do we know something is going wrong? – your throughput decreases! How do we know something is going wrong? – your throughput decreases! Prevents congestion collapse! Prevents congestion collapse! Need Web100! Allows in depth tcp stack analysis per flow Need Web100! Allows in depth tcp stack analysis per flow Kernel patch – , alpha1.2 Kernel patch – , alpha1.2 New version – alpha2.0pre1 New version – alpha2.0pre1 Using program to grab web100 results - logvars Using program to grab web100 results - logvars

Reliability of Web100 results… Still alpha… but reliable Still alpha… but reliable Graph against iperf throughputs correlate very well Graph against iperf throughputs correlate very well At least as reliable as the result offered by iperf! At least as reliable as the result offered by iperf!

Congestion Window Looking at the max_cwnd achieved for each measurement… Looking at the max_cwnd achieved for each measurement… Appears to be two regions Appears to be two regions –with high correlation of throughput and max cwnd –A linear region where we get the a range of throughputs for same max_cwnd Cwnd never grows beyond 1500kbytes! Cwnd never grows beyond 1500kbytes!

Bandwidth Delay Product Window = bandwidth * delay Window = bandwidth * delay We want We want –Bandwidth = 1,000,000,000 bit/sec We have We have –Delay = 19ms Window needs to be an average of… Window needs to be an average of… –=1e+9 * 19e-3 / 8 bytes –=2.25mbytes! We only achieve ~1.5mbytes max! We only achieve ~1.5mbytes max! Need to implement some monitoring of the degree of the average and variation of cwnd for each tcp connection… Need to implement some monitoring of the degree of the average and variation of cwnd for each tcp connection…

TCP Optimisation It’s actually TCP that is limiting our transfer rates! It’s actually TCP that is limiting our transfer rates! –All applications use it! Understandable as TCP hasn’t changed much for the last years! Understandable as TCP hasn’t changed much for the last years! –When standard link was about 56kbit/sec! Solution: Need new TCP implementations! Solution: Need new TCP implementations!

What is High Speed TCP? Changes the way TCP behaves at high speed (ie large cwnd) Changes the way TCP behaves at high speed (ie large cwnd) Standard TCP has two modes Standard TCP has two modes –Slow start (not very slow…) –Congestion Avoidance Focuses on Congestion Avoidance Region – ie when TCP knows (thinks it knows…) how well the network behaves… Focuses on Congestion Avoidance Region – ie when TCP knows (thinks it knows…) how well the network behaves… BUT only when we are at high speeds, else do what normal Standard TCP does… BUT only when we are at high speeds, else do what normal Standard TCP does… Readily deployable 1 st step towards Equation Based Congestion Control Readily deployable 1 st step towards Equation Based Congestion Control

What does it do? Standard TCP uses two parameters Standard TCP uses two parameters –Increase parameter, a –Decrease parameter, b i.e. AIMD( a,b ) i.e. AIMD( a,b ) Standard TCP uses Standard TCP uses –a=1 –b=0.5 High Speed TCP introduces High Speed TCP introduces –a->a(cwnd) –b->b(cwnd) i.e. The value of a and b depends on the current congestion window size i.e. The value of a and b depends on the current congestion window size If we increase a more with larger cwnd we can get back up to our ‘optimal’ cwnd size for the network path If we increase a more with larger cwnd we can get back up to our ‘optimal’ cwnd size for the network path If we decrease b less we don’t lose as much bandwidth due to a small congestion window If we decrease b less we don’t lose as much bandwidth due to a small congestion window

What exactly does it do? Based on the TCP response function Based on the TCP response function –Relates loss and throughput Uses the TCP response function to investigate certain parameters Uses the TCP response function to investigate certain parameters –High_Window, High_Loss; largest cwnd needed for x throughput and the required loss for that throughput –Low_Window, Low_Loss; smallest cwnd when we actually switch from Standard TCP and the required loss rate for that cwnd size –High_B; the smallest decrease in b when we are at a large cwnd Equations to transform this information into a table for a(cwnd) and b(cwnd) Equations to transform this information into a table for a(cwnd) and b(cwnd)

Transport Protocols ‘NG’ NameTransportNotes UDP BlastUDP TsunamiUDP/TCPUses TCP as ‘control’ channel High Speed TCPTCPFor 10Gb/sec links PGM / CCModified UDPMulticast UDP – new transport protocol IBPApplication ‘logistical networking’