DiFX Python Interface John Spitzak (USNO).

Slides:



Advertisements
Similar presentations
Grid Resource Allocation Management (GRAM) GRAM provides the user to access the grid in order to run, terminate and monitor jobs remotely. The job request.
Advertisements

Universidad del Cauca Red de Datos Module 9 Remote Connections.
1 Computer Files Stored on disks, CDs, tapes, in memory. Types of files: plain text, formatted (.doc.xls etc…), binary (executable). A disk has a directory.
MIGSOCK Migratable TCP Socket in Linux Demonstration of Functionality Karthik Rajan Bryan Kuntz.
Hypertext Transfer Protocol Kyle Roth Mark Hoover.
File Transfer: FTP and TFTP
Chapter 2: Application layer  2.1 Web and HTTP  2.2 FTP 2-1 Lecture 5 Application Layer.
Lesson 19: Configuring Windows Firewall
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Chapter 20 File Transfer Protocol (FTP)
TCP/IP suit 4th Edition by Behrouz A Forouzan. 2 Internet Computing (CS-413)
File Transfer Protocol (FTP)
FTP File Transfer Protocol. Introduction transfer file to/from remote host client/server model  client: side that initiates transfer (either to/from.
2440: 141 Web Site Administration Remote Web Server Access Tools Instructor: Enoch E. Damson.
2012 DiFX Users Meeting, Sydney John Spitzak Purpose: Provide a User Interface for specific needs of USNO o Run and organize repetitive DiFX jobs (daily.
Welcome to CSE  Name: Di Cao   Classroom: DL357  Class Time: T 8:30am - 9:18am  Office.
1 THE UNIX FILE SYSTEM By Chokechai Chuensukanant ID COSC 513 Operating System.
1 Computer Communication & Networks Lecture 27 Application Layer: Electronic mail and FTP Waleed.
FTP (File Transfer Protocol) & Telnet
Rensselaer Polytechnic Institute Shivkumar Kalvanaraman, Biplab Sikdar 1 The Web: the http protocol http: hypertext transfer protocol Web’s application.
9/15/2015© 2008 Raymond P. Jefferis IIILect Application Layer.
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
1 In the good old days... Years ago… the WWW was made up of (mostly) static documents. –Each URL corresponded to a single file stored on some hard disk.
1 Version 3.0 Module 11 TCP Application and Transport.
ITEC 370 Lecture 16 Implementation. Review Questions? Design document on F, feedback tomorrow Midterm on F Implementation –Management (MMM) –Team roles.
UNIX Commands. Why UNIX Commands Are Noninteractive Command may take input from the output of another command (filters). May be scheduled to run at specific.
1 Welcome to CSC 301 Web Programming Charles Frank.
Getting started: Basics Outline: I.Connecting to cluster: ssh II.Connecting outside UCF firewall: VPN client III.Introduction to Linux IV.Intoduction to.
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 8 Omar Meqdadi Department of Computer Science and Software Engineering University of.
TFTP: Trivial file transfer protocol
Design and Implementation of PARK (PARallel Kernel for data fitting) Paul KIENZLE, Wenwu CHEN and Ziwen FU Reflectometry Group.
1 Chapter 34 Internet Applications (Telnet, FTP).
FTP Server API Implementing the FTP Server Registering FTP Command Callbacks Data and Control Port Close Callbacks Other Server Calls.
TCP/IP Protocol Suite 1 Chapter 19 Upon completion you will be able to: File Transfer: FTP and TFTP Understand the connections needed for FTP file transfer.
1 Daemons & inetd Refs: Chapter Daemons A daemon is a process that: –runs in the background –not associated with any terminal Unix systems typically.
PostgreSQL Installation By: Keerthi Nelaturu Previous version by Ahmed Jeddah & Miguel Garzon.
File Transfer Protocol (FTP)
Department of Computer Science Southern Illinois University Edwardsville Spring, 2008 Dr. Hiroshi Fujinoki FTP Protocol Programming.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Linux A practical introduction. 1)Background and Getting Started Linux is an operating system with multiple providers Red Hat/CentOS (our version) Ubuntu.
A Local Area Network Chat Client ITTC LAN CHAT John Vincent Cecogo Jerikho Daguno Ardee Santos Elaine Mendoza Anjomar Pat Del Mindo Philip John Sales Philip.
CS 120 Extra: The CS1 Server Tarik Booker CS 120.
Chapter 4: server services. The Complete Guide to Linux System Administration2 Objectives Configure network interfaces using command- line and graphical.
Assignprelim.1 Assignment Preliminaries © 2012 B. Wilkinson/Clayton Ferner. Modification date: Jan 16a, 2014.
Tutorial Six Linux Basics CompSci Semester Two 2016.
UNIX To do work for the class, you will be using the Unix operating system. Once connected to the system, you will be presented with a login screen. Once.
CS1010: Intro Workshop.
Tutorial Six Recap & Linux Basics CompSci Semester Two 2016.
WWW and HTTP King Fahd University of Petroleum & Minerals
CCNA Routing and Switching Routing and Switching Essentials v6.0
Andy Wang Object Oriented Programming in C++ COP 3330
FTP Lecture supp.
Net 323 D: Networks Protocols
Chapter 10: Device Discovery, Management, and Maintenance
CCNA Routing and Switching Routing and Switching Essentials v6.0
Assignment Preliminaries
Using the Parallel Universe beyond MPI
DUCKS – Distributed User-mode Chirp-Knowledgeable Server
File Transfer: FTP Objectives Chapter 19
Chapter 10: Device Discovery, Management, and Maintenance
Application layer Lecture 7.
Chapter 2: Application layer
Net 323 D: Networks Protocols
Andy Wang Object Oriented Programming in C++ COP 3330
HyperText Transfer Protocol
Lab 4: Introduction to Scripting
Snippet Engine as a Database Server
Internet Applications (Telnet, FTP)
Presentation transcript:

DiFX Python Interface John Spitzak (USNO)

Motivation USNO Effort to Automate Repetitive Goedesy Experiments Daily 1-hour “Intensives” are quite routine Python specification is clear Preempt external specification guiServer Has Many Capabilities Possibly well beyond command line Set up to handle remote connections Better half of the GUI client/server code Something Different…

What Is It? Series of Python Classes Some Complex Some Minor Example Python Programs Produced to test classes and demonstrate their use Possibly useful in their own right

How To Run It Server side: Requires guiServer Should be in DiFX bin directory Non-intrusive, (mostly) stable Client side: Use One of the “Control” Classes Connect using guiServer host, port number

What Can It Do? Simple Operations: mv, rm, mkdir, rmdir Transfer Data: sendFile, getFile

What Can It Do? List Directories (requires wait for response): ls Collect DiFX Message Traffic (requires a callback):

What Can It Do? Obtain Last Run Status of a Job(s): jobStatus Manipulate Jobs: DiFXJobControl Class Adjust .machines/.threads Files:

What Can It Do? Start and Stop Jobs: Collect Real-Time Monitor Data (bunch of code)

What It Can’t Do (Yet) Create New Jobs From .vex, .v2d Files Manipulate Mark5’s Send Mark5 Commands View Mark5 Directories Generate File Lists Copy Mark5 Data

Example Programs Simple Operations (Coding examples) DiFXmkdir - makes a new directory on server DiFXls - list directory contents on the server DiFXgetFile - get the contents of a file DiFXsendFile - create a file with specific content More Interesting DiFXversion - get DiFX version running on the server, view environment variables DiFXMessages - view DiFX UDP message traffic, filter by source, message type, and “identifier” (job, usually) DiFXJobStatus - parses .difxlog for a job, returns most recent status, can “monitor” in repeat mode

Example Programs Kind of Nifty DiFXBusy - monitors what a correlator is working on, shows jobs running and % complete, nodes used DiFXJobControl - starts and stops jobs, can specify machines/threads, limited real-time monitoring capability

Where To Get It Part of the DiFX Distribution difx/applications/guiServer/trunk/python Classes and example programs in: …/python Documentation: Generate with doxygen from: …/python/docSrc Top level in: …/python/doc/index.html