Upload
ludwig-wollschlager
View
108
Download
1
Embed Size (px)
Citation preview
42. COURSE - LIMBURG AN DER LAHN
13.-15. MAI 2012
Heinz Peter Maassen . Lattwein GmbH . [email protected]
3
42
. Course
20
12
Limburg
AGENDA
CPG 2.6 Threadsafe QIT.Net News
CPG5 – CheckKlick ICCFSCAN Members Beispiel TCP/IP DNS Namen TCP/IP API- Versionen Around z/VSE
TCP/IP CSI – BSI – LFP – VIA
4
42
. Course
20
12
Limburg
Z/VSE EVOLUTION 2011
5
42
. Course
20
12
Limburg
Z/VSE EVOLUTION 2012
6
42
. Course
20
12
Limburg
CPG 2.6
CPG Evolution mit zVSE
1973 1980 1990 2000
CICS DOSDOS Rel. 23
CICS VS 1.0DOS/VS Rel. 27
CICS VS 1.1DOS/VS/SP Rel. 27-34
CICS VS 1.2 – 1.3VSE/ESA Rel. 1.3
CICS VS 1.1.1VSE/ESA Rel. 1.0
CICS/VS 1.4 - 1.7VSE/ESA Rel. 1.4
CICS/VSE 2.1-2.3VSE/ESA Rel. 2.1-3
Virtual Storage
VSAM SQL/DS MRO/ISC31 BitY2K Support
CPG-1
CPG-2QSFQDD
CPG-3
QDFQueryCPG-FF
CPG-4
QTFQXFLIST
CPG-5QPG
NetPageQIT
Browser mit APPCab 1997
7
42. Course 2012 Limburg
CPG 2.6 CPG Evolution mit zVSE
1999 2002 2005 20112008
CICS TS 1.1.1 + CICS/VSE 2.3VSE/ESA Rel. 2.4-2.7
CICS/VSE 2.3VSE/ESA Rel. 2.4-2.7
CICS TS 1.1.1 + CICS/VSE 2.3z/VSE 3.1(2005)
CICS TS 1.1.1 + CICS/VSE 2.3z/VSE 4.1 (2007)
CICS TS 1.1.1 + CICS/VSE 2.3z/VSE 4.2 (2008)
CICS TS 1.1.1
onlyz/VSE 5.1 (2011)
CICS TS 1.1.1 - CICS/VSE 2.3z/VSE 4.3 (2010)
CPG-5NetPage
QITBrowser
mit TCP/IPab 1999
CPG-5+ CPGXML
CPG-5+ CPGJDBC
MAILCPGSHELL
CPG-5+.Net ASPX
Qit.NET ?
8
42
. Course
20
12
Limburg
CPG 2.6 Was kommt denn jetzt noch ?
Windows 2008 Server – Windows 7 und Windows 8
64 Bit Support Unterstützen aber kein Visual Basic V 6 mehr. Lattwein hat QIT und andere Client Produkte nach C#
portiert
Einige Vorteile ergeben sich für die Anwender
Fertige FTP Jobs können erstellt und ausgeführt werden Direkt von CICS nach CICS
9
42
. Course
20
12
Limburg
CPG 2.6
Zukunft im z/VSE
64 Bit Support mit zVSE 5.1
Im z/OS kann es mehr als 1 Prozessor je CICS geben Vorteil schnellere Verarbeitung Nachteil: Programme müssen Threadsafe sein
(Full Reentrant) oder zwischen Threadsafe und Quasi reentrant umschalten
Geht zur Zeit nur für DB2 Zugriffe im z/OS Kann aber auch für z/VSE kommen – wer weiß
das schon
10
42
. Course
20
12
Limburg
CPG 2.6 Neue Methodenbank für CPG (1-5)
Alle Routinen für CICS TS verbleiben in der CPGMBK. Über Conditional Assembler kann die CPGMBK optimiert werden. ( VBOMP/EDN, CPGCCI Macro Level wahlweise, uvm. )
Alle Routinen verwenden eine eigene DSECT für Work Bereiche
Methodenbankfelder sind jetzt lokal pro Task
Full Reentrant – Keine Code Modifikationen, keine Datenmanipulation im Code Bereich
11
42
. Course
20
12
Limburg
CPG 2.5
Logik Ablauf CPG 2.5
CPG/HL1/QPGProgramme
TWA
CPGMBK
BT und Work Felder
CPGPIW
CPGTOM
CPG - SDUMPCPG - SDUMP Code+ >Interne Felder<
Quasi Reentrant Code bedeutet: Modifikationen von Code, abspeichern von Feldinhalten zwischen zwei CICS Befehlen möglich.
In der CPGPIW werden Felder gehalten, die über CICS Befehle hinaus gültig bleiben.1-mal je Task
12
42
. Course
20
12
Limburg
CPG 2.6
Logik Ablauf (Programm Start Wahlweise ab 2.6) CPG/HL1/QPGProgramme
TWA
CPGMBK
BT und Work Felder
BT und Work FelderCPGPWA Kopie in
einem User Storagepro Task !
CPG - SDUMP nur Code
CPG - SDUMP
Work Felder
CPGTOM
13
42
. Course
20
12
Limburg
CPG 2.6 THREADSAFE Bei Programm Start wird mit GETMAIN ein
Workbereich von 4 KB angelegt.
Hier werden die ersten 4096 Bytes der CPGMBK kopiert. 1. K = Branch Table 2. K = User Branch Table 3. K = Allgemeine CPG Felder 4. K = User MBK Felder
Dieser Bereich wird Task bezogen mit Register 11 adressiert.
Die Adresse wird im CPGPIW Bereich gesichert.
14
42
. Course
20
12
Limburg
CPG 2.6 THREADSAFE
Was ändert sich für den Kunden ?
Nichts – alle Änderungen werden unter den Oberfläche wirksam - allerdings nur über eine Option.
Programme können sowohl nach alter wie auch nach neuer Logik ablaufen
Wir sind gerüstet für den “Full Reentrant“ Code.
15 Jahre Web Anwendungen QIT ist ein guifizierter FTP und kann:
Power List und Punch Queue Daten auf Client übertragen
Jobs in die Power Reader Queue stellen
Alle Dateien, die Online verfügbar sind, empfangen
QPG Programme ausführen und Daten mit Logik senden und empfangen
42. Course 2012 Limburg
15
15 Jahre Web Anwendungen
16
42. Course 2012 Limburg
2.4 MB in 11
Sekunden !
12
17
42
. Course
20
12
Limburg
QIT.NET
Windows 7 und Windows 8 sind die aktuellen Betriebssysteme der kommenden Jahre beim Client
Ab Windows 7 keine Unterstützung mehr für VB Version 6 Programme
QIT wurde aber mit VB entwickelt
Deshalb:
Qit.NET neu entwickelt mit .NET Studio und C#
18
42
. Course
20
12
Limburg
QIT.NET Wie sieht das aus?
19
42
. Course
20
12
Limburg
NEWS
Neue Funktionen im CPG 2.6
Statistik und Laufzeitmessung für CPG5 und CPGXML LIST Erweiterungen HL1 Batch Datei Verarbeitung Query Erweiterungen Methodenbank full reentrant wegen Threadsafe QPG Edit Codes für Excel Minus Werte Bessere Fehlernachrichten bei Abbruch von
Browseranwendungen QPG Erweiterungen für TESTN, DELC, ELIM und REPLC Statistik und CICS - Sort verbessert
20
42
. Course
20
12
Limburg
CHECK-KLICK
In Browser Anwendungen kann der Endanwender mehrfach Buttons, Hyperlinks und Default Anwendung klicken, falls das nicht verhindert wird. ( Bei 3270 X - System).
Microsoft ersetzt IIS 6 durch IIS 7 im Windows 2008 Server.
IIS 7 bricht eine bereits gestartete Aktion ab und führt nur noch die letzte durch. Das kann zu einem Fehlverhalten der Anwendung führen.
Fehler sind: Speicher wird nicht freigegeben und Logfiles werden nicht gelöscht!
Das Javascript: CheckKlick verhindert weitere Aufrufe von einer Browserseite wie 3270. ( X – System)
21
42
. Course
20
12
Limburg
CICS – VSECHECK-KLICK
CPG5.exeGLEITZIK_PRG5
CPG5.exeGLEITZIK_PRG5
CPG5.exeGLEITZIK_PRG5
TASK: QTCL10345
TASK: QTCL10347
TASK: QTCL10359
1
2
3
1
2
3
22
42
. Course
20
12
Limburg
CHECK-KLICK
Was muss der Programmierer machen, damit keine doppelten Aufrufe mehr erfolgen können:
Funktionsaufruf bei der letzten Variablen aktivieren
So sieht das aus:
23
42
. Course
20
12
Limburg
CHECK-KLICK
Letzte Variable ist: %Checkklick Enthält Include-Datei: Checkklick.htm
24
42
. Course
20
12
Limburg
CHECK-KLICK
Checkklick.htm enthält den folgenden HTML Code:
<!-- BEGIN HTMLCODE --><script type="text/javascript" language="javascript" src="/qsf/block_onsubmit_and_href.js"></script> <!-- END HTMLCODE -->
Hier wird das JavaScript: block_onsubmit_and_href.js in die HTML Seite eingefügt.
Dieses Script verhindert doppelte Aufrufe zum Listener auf z/VSE Seite.
25
42
. Course
20
12
Limburg
CHECK-KLICK
Ausführung:
Hyperlinkswerden geblockt!
26
42
. Course
20
12
Limburg
CHECK-KLICK
Doppelte Programm Ausführungen werden durch das JavaScript unterdrückt
Der IIS Version 7 arbeitet anders als IIS Version 6. Task wird abgebrochen während noch Daten empfangen werden.
Sprechen Sie uns an.
27
Z/VSE ICCF SCAN
Wer kennt das nicht?
Ein Job der seit Jahren fehlerfrei läuft bricht während der Batch Verarbeitung ab.
Der zuständige Programmierer oder Operator oder Arbeitsvorbereiter hat Urlaub, ist krank oder kommt erst in 8 Stunden.
Niemand weiß, wo die aktuellen Sourcen, JCL oder VSAM Cluster Definitionen stehen.
Die Suche nach dem Fehler beginnt. . . .
42
. Course
20
12
Limburg
28
Z/VSE ICCF SCAN
Sind die Sourcen im CMS in einem Programmverwaltungssystem vorhanden? Und kann man diese einfach finden?
Oder stehen diese vielleicht im ICCF?
Gibt es eine Dokumentation der letzten Änderungen?
Welche Änderungen gibt es überhaupt im System seit dem letzten erfolgreichen Lauf?
42
. Course
20
12
Limburg
29
Z/VSE ICCF SCAN
Unsere Idee: Alle ICCF Member als Punch Ausgabe abstellen und via FTP auf einen PC übertragen.
Außerdem den Index zur ICCF Library erstellen und ebenfalls auf den gleichen PC übertragen.
Nach Schlüsselworten, Datum der letzten Änderung suchen.
Noch besser: Die Daten zusammenführen und als DB2 Tabelle erstellen, damit man einfach nach allen möglichen Konstellationen suchen kann.
42
. Course
20
12
Limburg
30
Z/VSE ICCF SCAN
ICCF Index:
// JOB DISPLAY DIRECTORIES
// EXEC PROC=DTRICCF (ASSIGN VSE/ICCF LIBRARY FILE)
// EXEC DTSUTIL
DSERV ALL COM SORTED
END
/&
42
. Course
20
12
Limburg
31
Z/VSE ICCF SCAN
ICCF Index via FTP auf PC gesendet:
. DSERV ALL COM SORTED
--- DTSUTIL --- I C C F L I B R A R Y F I L E M A I N T E N A
1...5...10...15...20...25...30...35...40...45...50...55...60...65...7
LIBRARY 10 DATE OF LAST ACCESS IS 17/10/2011
MAY CONTAIN COMMON MEMBERS
FREE SPACE RESTORE FACTOR IS 25
A MEMBER USER FLAGS
F NAME C ID DATE *----------------------*
APPLYALL SYSA 01/07/2008 PUB
APP53337 SYSA 07/10/2008 PUB
BSTSAV SYSA 19/05/2008 PUB
CATALFCB SYSA 22/03/2007 PUB
CATALUCB SYSA 14/12/2005 PUB
CEEDOPT SYSA 23/06/2008 PUB
42
. Course
20
12
Limburg
32
Z/VSE ICCF SCAN
ICCF Index Clean via JAVA Programm aufbereitet:
42
. Course
20
12
Limburg
10APPLYALLSYSA | 01/07/2008 | 10APPLYAL2SYSA | 22/01/2007 | 10APP53337SYSA | 07/10/2008 | 10BSTCONCTSYSA | 27/08/2007 | 10BSTSAV SYSA | 19/05/2008 | 10CATAAFCBSYSA | 22/03/2007 | 10CATALFCBSYSA | 22/03/2007 | 10CATALIPLSYSA | 25/02/2010 | 10CATALUCBSYSA | 14/12/2005 | 10CATTCP SYSA | 19/04/2009 | 10CEEDOPT SYSA | 23/06/2008 | 10CEEWCOPTSYSA | 27/06/2011 | 10CEEWDOPTSYSA | 27/06/2008 |
33
Z/VSE ICCF SCAN
ICCF Member Punch:
// JOB DISPLAY DIRECTORIES // EXEC PROC=DTRICCF (ASSIGN VSE/ICCF LIBRARY FILE) // EXEC DTSUTIL PUNCH LIBRARY(10) COM PUNCTL PUNCH LIBRARY(11) COM PUNCTL PUNCH LIBRARY(96) COM PUNCTL PUNCH LIBRARY(98) COM PUNCTL PUNCH LIBRARY(100) COM PUNCTL PUNCH LIBRARY(111) COM PUNCTL PUNCH LIBRARY(112) COM PUNCTL PUNCH LIBRARY(113) COM PUNCTL PUNCH LIBRARY(126) COM PUNCTL END /& * $$ EOJ
42
. Course
20
12
Limburg
34
Z/VSE ICCF SCAN ICCF Member Punch via FTP zum PC gesendet:
ADD MEMBER 10 F$SYSA SYSA
..$$ JOB JNM=F$SYSA,CLASS=A,DISP=D,NTFY=YES
// JOB SYSA PRINT FILE
// DLBL PRINTFL,'QMAIL.VSAM.TEMP',,VSAM,CAT=UCAT222
// EXEC IDCAMS,SIZE=AUTO
PRINT INFILE (PRINTFL) -
CHARACTER
../*
../&
..$$ EOJ
END OF MEMBER
42
. Course
20
12
Limburg
35
Z/VSE ICCF SCAN
ICCF Member Punch via FTP zum PC gesendet:
ADD MEMBER 10 CPGESD1D SYSA
..$$ JOB JNM=CPGESD1D,CLASS=0,DISP=D,NTFY=YES
// JOB SYSA DELETE OBJECT
// EXEC IDCAMS,SIZE=AUTO
DELETE (CPGESD1 ) -
CLUSTER -
PURGE -
CATALOG (UCAT220 )
IF LASTCC NE 0 THEN CANCEL JOB
. .
END OF MEMBER
ADD MEMBER 10 F$SYSA SYSA
..$$ JOB JNM=F$SYSA,CLASS=A,DISP=D,NTFY=YES
// JOB SYSA PRINT FILE
// DLBL PRINTFL,'QMAIL.VSAM.TEMP',,VSAM,CAT=UCAT222
// EXEC IDCAMS,SIZE=AUTO
. . .
42
. Course
20
12
Limburg
36
Z/VSE ICCF SCAN
ICCF Member Punch CLEAN via Java Programm aufbereitet:
LIB_MEM_Name|STMTNR|SOURCE-Statement
10APPLYALL|000001|* $$ JOB JNM=DTRPTFAB,DISP=L,PRI=9, C
10APPLYALL|000002|* $$ NTFY=YES, C
10APPLYALL|000003|* $$ CLASS=0
10APPLYALL|000004|* $$ LST DISP=H
10APPLYALL|000005|// JOB DTRPTFAB
10APPLYALL|000006|// OPTION IGNLOCK
10APPLYALL|000007|* -----------------------------------------------------------
10APPLYALL|000008|* A MANAGED JOB HAS FAILED. DO THE FOLLOWING:
10APPLYALL|000009|*
10APPLYALL|000010|* 1. REPLY "EXIT" TO STOP THE JOB SEQUENCE.
10APPLYALL|000011|* 2. FIX THE PROBLEM
10APPLYALL|000012|* 3. RELEASE THIS JOB AGAIN (R RDR,DTRPTFAB)
10APPLYALL|000013|* 4. REPLY "RESUME" TO RESTART PROCESSING OF THE ABORTED JOB.
10APPLYALL|000014|*
10APPLYALL|000015|* NOTE: IF YOU WANT TO EXIT THE PTF APPLICATION JOB STREAM IN
10APPLYALL|000016|* TO RESUME LATER ON FROM THE BEGINNING, REPLY "EXIT"
. . .
42
. Course
20
12
Limburg
37
Z/VSE ICCF SCAN
Job Streams: DSERV FTP Liste Löschen
42
. Course
20
12
Limburg
* $$ JOB JNM=LSICCF00,CLASS=M,DISP=K,DUETIME=0015,DUEDAY=(MON-FRI) * $$ LST CLASS=Y,RBS=0,RBM=0,DEST=(*,ZZ),EXPDAYS=1 // JOB DISPLAY DISPLAY DIRECTORIES // EXEC PROC=DTRICCF (ASSIGN VSE/ICCF LIBRARY FILE) // EXEC DTSUTIL DSERV ALL COM SORTED END /& * $$ EOJ * $$ JOB JNM=LSICCFDS,CLASS=M,DISP=K,DUETIME=0016,DUEDAY=(MON-FRI) * $$ LST CLASS=Y,DEST=(*,BZ),EXPDAYS=1 // JOB LSICCFDS FTP ICCF_INDEX --> PC // EXEC FTPBATCH,SIZE=FTPBATCH,PARM='ID=00,TRAN=GERMAN_03' LOPEN LUSER XXXX LPASS XXX OPEN 192.168.111.045 USER YYYYYYYY PASS yyyy LCD POWER.LST.Y CD ICCF PUT LSICCF00 ICCF_INDEX.TXT QUIT /* // EXEC BACEMT CMD L LST,LSICCF00 /* /& * $$ EOJ
ICCF_INDEX.txt wird mit Job Extract umgesetzt
38
Z/VSE ICCF SCAN Job Streams:
PUNCH FTP
42
. Course
20
12
Limburg
* $$ JOB JNM=LSICCF01,CLASS=M,DISP=K,DUETIME=0017,DUEDAY=(MON-FRI) * $$ LST CLASS=Y,RBS=0,DEST=(*,ZZ),EXPDAYS=1 * $$ PUN CLASS=Y,RBS=0,RBM=0,DEST=(*,ZZ) // JOB LSICCF01 PUNCH LIBRARIES // EXEC PROC=DTRICCF // EXEC DTSUTIL PUNCH LIBRARY(11) COM PUNCTL PUNCH LIBRARY(93) COM PUNCTL PUNCH LIBRARY(94) COM PUNCTL PUNCH LIBRARY(102) COM PUNCTL END /* /& * $$ EOJ * $$ JOB JNM=LSICCFMB,CLASS=M,DISP=K,DUETIME=0018,DUEDAY=(MON-FRI) * $$ LST CLASS=Y,DEST=(*,ZZ),EXPDAYS=1 // JOB LSICCFMB FTP ICCF_Data --> PC // EXEC FTPBATCH,SIZE=FTPBATCH,PARM='ID=00,TRAN=GERMAN_03' LOPEN LUSER XXXX LPASS XXX OPEN 192.168.111.45USER YYYYYYYY PASS yyyy LCD POWER.PUN.Y
39
Z/VSE ICCF SCAN
Job Streams: Liste Löschen EXTRACT Index Extract Data
42
. Course
20
12
Limburg
CD ICCF PUT LSICCF01 ICCF_DATA.TXT QUIT /* // EXEC BACEMT Liste Löschen CMD L PUN,LSICCF01 CMD L LST,LSICCF01 /* /& // JOB EXTRACT ICCF INDEX Extract Index// EXEC CPGSHBAT,PARM='IPADDR=192.168.111.045:04799' $$$$$$$$00IccfIndx.cmd *C:\Temp\ICCF\ICCF_INDEX.TXT C:\Temp\ICCF\ICCF_INDEX_Clean.txt /* /* * Wait 10 Seconds // EXEC BACEMT BWAIT 0010 /* * EXTRACT DATA// EXEC CPGSHBAT,PARM='IPADDR=192.168.111.045,IPPORT=04799' $$$$$$$$00IccfExtr.cmd *C:/Temp/ICCF/ICCF_DATA.TXT C:/Temp/ICCF/ICCF_DATA_Clean.txt /* /& * $$ EOJ
Daten
Index
40
Z/VSE ICCF SCAN Import in Datenbank
42
. Course
20
12
Limburg
* $$ JOB JNM=LSICCF02,CLASS=M,DISP=K,DUETIME=0027,DUEDAY=(MON-FRI)* $$ LST CLASS=Y,DEST=(,BZ),EXPDAYS=1 // JOB IMPORT ICCF TO MYSQL // EXEC CPGSHBAT,PARM='IPADDR=192.168.111.045:04799' $$$$$$$$00ICCF_Import.exe PROD C:\Temp\ICCF\ICCF_INDEX_Clean.txt * C:\Temp\ICCF\ICCF_DATA_Clean.txt /* /& *PARTIAL END PRINT* $$ EOJDaten und Index werden in eine Relationale Datenbank geladen.
Somit kann mit einem Select und entsprechender Where Clause jeder Suchbegriff sowohl in den Daten als auch im Index blitzschnellgefunden werden
41
Z/VSE ICCF SCAN Anzeige im Browser:
42
. Course
20
12
Limburg
41
42
Z/VSE ICCF SCAN Anzeige im Browser:
42
. Course
20
12
Limburg
43
Z/VSE ICCF SCAN Vorteile:
Schnelles Auffinden von Member Jedes Suchkriterium erlaubt Nur ab Datum Im Browser verfügbar an jedem Arbeitsplatz
CPGSHBAT ( CPG Shell Aufruf Batch) kann Programme auf einem Windows oder Linux System aufrufen und ausführen Das können auch CMD oder .BAT Dateien sein Wartet auf Ende der Verarbeitung
Wir bieten auch die komplette Anwendung ICCF Scan an, evtl. auch für CMS und andere.
42
. Course
20
12
Limburg
44
TCP/IP DNS NAMENSAUFLÖSUNG
Werden bei einem Profil einer Anwendung feste IP Adressen verwendet, führt jede Netzwerk Umstellung zu dem Problem:
Wie heißt die aktuelle IP – Adresse meines Dienstes?
Werden DNS Namen verwendet so wird nur noch die neue IP- Adresse im DNS Server geändert und alles ist OK.
Die Administration wird vereinfacht.
42
. Course
20
12
Limburg
45
TCP/IP DNS NAMENSAUFLÖSUNG
Lattwein Produkte haben bis CPG 2.5 nur feste IP Adressen verwendet außer für QIT.
CPGJDBC kennt ab CPG 2.6 auch DNS Namen.
Wie wird das eingetragen?
In der Tabelle QJDBCGTB können beide Varianten eingetragen werden:
42
. Course
20
12
Limburg
46
TCP/IP DNS NAMENSAUFLÖSUNG
42
. Course
20
12
Limburg
*---------------------------------------------------------------------* CPGDB DC CL8'CPGDB ' DBNAME * DC CL2'00' TCPIP_SYSID * DC CL50'jdbc:db2:cpgdb DBADMIN PASSWD ' * DC CL50' ' * DC CL29'000.000.192.168.197.040:04720' * DC CL10' ',C'C' RESERVED,CONSOLMESSAGES * *---------------------------------------------------------------------* DBMAS DC CL8'DBMAS ' DBNAME * DC CL2'00' TCPIP_SYSID * DC CL50'jdbc:db2:dbmas DBADMIN PASSWD ' * DC CL50' ' * DC CL6'DYNDNS' KEYWORD for DYNDNS * DC AL4(DYNDNS01) POINTER TO NAME * DC H'4720' PORT * DC CL17' ' * DC CL10' ',C'C' RESERVED,CONSOLMESSAGES **---------------------------------------------------------------------* DC XL16'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF' * DYNDNS01 DC AL1(10),CL10'PC-MAASSEN' * DYNDNS02 DC AL1(25),Cl25'lattwebmysql.lattwein.de' * DYNDNS03 DC AL1(21),Cl21'lw2003sbs.lattwein.de' *
Feste IP Adresse
DNS Name
47
TCP/IP DNS NAMENSAUFLÖSUNG
Bisher unterstützt:
CPGJDBC Online und BatchQit.NET CPG5 FTP
In Planung für 2.6:
QCFTCPML Mail Online und Batch
CPGSHELL Ausführen von VSE auf Windows/Linux
42
. Course
20
12
Limburg
48
TCP/IP API VERSIONENCPG unterstützt folgende API‘s für TCP/IP:
42
. Course
20
12
Limburg
Bisher ist nur das EXEC Level API mit 1.5E beim Kunden installiert. Dieses Interfaceerzeugt das Assembler Socket API durch Preprozessor und geht auch mit BSI!
Der Preprozessor ab TCP/IP 1.5F generiert CALL Aufrufe nur für den CSI Stack!
Tipp: Die CSI - Sublibrary TCPIP 1.5E nicht löschen !
API Umgebung IP Versionen CPG Version
EZA Call Interface
z/OSz/VSE ab 4.1
z/OS: allez/VSE: CSI und BSI
CPG 2.5CPG 2.6
EXEC Level API TCP/IP 1.5E
z/VSE ab VSE/ESA 2.6
CSI und BSI CPG 2.5CPG 2.6
EXEC Level API TCP/IP 1.5F
z/VSE ab z/VSE 4.1
Nur CSI ! CPG 2.6
49
AROUND Z/VSE
Neues von z/VSE 5.1
64 Bit Adressierung CICS Explorer LFP Linux Fast PathVIA – z/VM IP Assist
42
. Course
20
12
Limburg
50
AROUND Z/VSE
42
. Course
20
12
Limburg
51
AROUND Z/VSE
42
. Course
20
12
Limburg
52
42
. Course
20
12
Limburg
WER KANN LFP ODER VIA BENUTZEN?
Was nicht geht:
FTP TELNET
HTTP Server im z/VSE LPR und LPD
Alle IBM Konnektoren können LFP und VIA
Alle Lattwein Produkte verwenden Socket API oder EZA CALL
Interface
CPG5 CPGXML Qit.NET
CPGSHELL MAIL4HOST CPGJDBC
52
53
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON
Virtual z/VSE FTP Daemon kann auf jeder Java Plattform installiert werden und emuliert
einen FTP Server. Der Zugriff zu den z/VSE Ressourcen erfolgt über die aktuellen VSE
Connector Server (Minimum: z/VSE 4.3)
Der Virtual z/VSE FTP Daemon: Handhabt alle FTP Clientanfragen
Kann sich zu einem oder mehreren VSE Connector Servern verbinden.
Ist verantwortlich für das Connection Handling
Und führt die entsprechende Übersetzung der Daten durch (ASCII EBCDIC/ EBCDIC ASCII).
Kann IPv6. Man kann sich zum Virtual FTP Daemon über FTP Clients mit IPv6 verbinden, und der Virtual z/VSE FTP
Daemon verbindet sich zum VSE Connector Server mit IPv4.
Unterstützt SSL, beide Verbindungen für den FTP (zwischen FTP Client und Virtual z/VSE FTP Daemon, verwenden
implizites SSL (FTPS), ebenso die Verbindung zum VSE Connector Server (zwischen Virtual z/VSE FTP Daemon und
z/VSE Host).
Anmerkung: Dieses Tool basiert auf dem aktuellen VSE Connector Client und braucht
mindestens ein JRE/JDK 1.5 oder grösser.
53
54
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON
Vorteile:
Unterstützung von Codepages welche CSI/BSI nicht unterstützt, z.B. UTF-8 oder auch DoubleByte Codepages (Chinesisch, Japanisch, Arabisch, etc).
Da die Codepage Übersetzung auf dem PC stattfindet, wird die CPU Last dafür von VSE zum PC 'offloaded', spart also CPU Last auf VSE
SSL Support (kostenlos), bei CSI ist das u.U. ein kostenpflichtiges Feature, BSI hat es heute noch gar nicht
IPv6 Support - geht heute auch nur mit BSI, nicht aber mit CSI
Performance Vorteile, wenn mit Linux Fast Path oder VIA verwendet
54
55
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON Wie geht das ?
Das Bild zeigt die Anbindung zwischen einem FTP Client und einem virtual z/VSE FTP Daemon:
55© IBM: Picture aus Virtual z/VSE FTP Daemon Help
192.168.1.21 192.168.1.40 /PC-MAASSEN
192.168.42.22VSE431
57
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON
Voraussetzungen:
VSE Connector Client und VSE Connector Server müssen auf einem aktuellen Stand von z/VSE 4.3 sein.
Es muss eine TCP/IP Verbindung zwischen beiden Systemen möglich sein.
Der z/VSE Connector Server (STARTVCS) muss in einer z/VSE Partition gestartet sein.
Der Virtual z/VSE FTP Daemon muss auf einem System (Linux on System z, Linux, Unix, Windows) gestartet sein.
57
60
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON Client Angaben (FileZilla):
60
IP-Adress Virtual FTP Daemon
IP-Port FTP Daemon
61
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON Ansicht nach Verbindung (FileZilla):
61
62
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON
Das geht auch als FTP Session:
62
C:\Dokumente und Einstellungen\Maassen2>ftpftp> open pc-maassen 1021Verbindung mit PC-Maassen wurde hergestellt.220 IBM Virtual z/VSE FTP Server on PC-Maassen:1021 (version 1.0) ready to serve.Benutzer (PC-Maassen:(none)): SYSA331 Password required for SYSA.Kennwort: . . . . . . . . 230 User SYSA logged in. Idle timeout is 15 minutes.ftp> ls200 PORT command successful.150 ASCII data connection for / (192.168.197.40,42835).ICCFLIBRPOWERVSAM226 ASCII transfer complete.FTP: 64d Bytes empfangen in 0,00Sekunden 25000,00KB/sftp> cd power\rdr\7250 CWD command successful, current directory is "/POWER/RDR/7".ftp> ls200 PORT command successful.150 ASCII data connection for /POWER/RDR/7 (192.168.197.40,42836).PAUSEF7.00035%34TCPIP00.00020%19226 ASCII transfer complete.FTP: 64d Bytes empfangen in 0,09Sekunden 0,58KB/sftp> bye221 Goodbye.
Oder: SYSA@myvse2
63
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON
Fazit:
Viele neue Möglichkeiten FTP im z/VSE zu benutzen.
IP-Adresse von z/VSE braucht man nicht zu veröffentlichen.
IPv6 Support - geht heute auch nur mit BSI, nicht aber mit CSI.
Performance Vorteile wenn mit Linux Fast Path/VIA verwendet.
SSL Support (kostenlos), bei CSI ist das u.U. ein kostenpflichtiges Feature, BSI hat es heute noch gar nicht.
63
64
42
. Course
20
12
Limburg
VIRTUAL Z/VSE FTP DAEMON
Auch wir schauen was IBM an neuen Funktionen bietet.
Wir haben fast alle Konnektoren getestet, um Ihnen die Vorteile zeigen zu können
Diesen und andere Konnektoren zeigen wir bei unseren Seminaren
Die Seminare werden ständig aktualisiert.
64
65
SYSTEM - SEMINARE
Wir bieten Seminare an, bei Bedarf bitte anfragen.
VSE/VSAM-Grundlagen 5 Tage
VSE-Operating 5 Tage
VSE-Kompakt Teil 1: VSE-Installation 5 Tage
VSE-Kompakt Teil 2: VSE-Administration 5 Tage
* Inside TCP/IP for VSE 3 Tage
4 Tage mit BSI Stack 4 Tage
CICS Transaction Server 4 Tage
Dump-Analyse 2 Tage
Performance 3 Tage
IBM Konnektoren 2 Tage
z/VSE Security ( in Planung ) 2 Tage
42
. Course
20
12
Limburg
Seminare - nicht nur für System Programmierer !
66
42
. Course
20
12
Limburg
Noch Fragen ?
VIELEN DANK FÜR IHRE AUFMERKSAMKEIT