37
© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999Seite: 1 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

Embed Size (px)

Citation preview

Page 1: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 1

Netzwerkkommunikation von SAP R/3

Page 2: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 2

Client/Server-Architektur

TCP/IP-Protokoll

Höhere Protokolle / Schnittstellen

Datenaustausch / Verteilungsstrategie

Übersicht

Übersicht : Netzwerkprotokolle

Page 3: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 3

• R/3 : dreistufige Client/Server-Architektur.

Grundlegende Client/Server-Konfigurationen

Client / Sever - Konzept

Page 4: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 4

Client/Server : Übertragungsraten (I)

• Präsentation <-> Application-Server: 1,5-2,0 KB / dialog step

(nur GUI-Verkehr, keine Druckvorgänge, Grafiken, Uploads)

• Application-Server <-> DB-Server : ca. 20 KB / dialog step

mindestens 10Mbit / s ab mittelgrossen Anwendungen :

100Mit / s (bzw. FDDI)

• R/3 führt die gesamte Netzwerkkommunikation (keine

Großrechner-Anbindung) über TCP/IP (Transmission Control

Protocol / Internet Protocol)

Page 5: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 5

Client/Server : Übertragungsraten (II)

R/3 Network Load : Compressed Data Stream

Page 6: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 6

Definitionen:

C := Erforderliche Leitungskapazität, gemessen in bit/s

L := Auslastung der Leitung (0 <L< 1)

Tverarb := Verarbeitungszeit zwischen zwei Dialogschritten

Treak := Reaktionszeit

N := Gesamtanzahl der Benutzer, die mit der

Verarbeitungszeit TVerarb und bei einer Reaktionszeit

TReak arbeiten

C =16.000 * N / [L * (TVerarb + TReak)] bit/s

Client/Server : Übertragungsraten (III)

Page 7: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 7

Client/Server : Übertragungsraten (IV)

15 Benutzer, 10 s Verarbeitungszeit, 2 s Reaktionszeit, N = 15,

L = 0,5, C = 16.000 *30 / [ 0,5 (30 s +2 s)] bit/s = 40.000 bit/s

=> 64.000 bit/s Leitung

Beispiel 1:

Beispiel 2:

30 Benutzer, 30 s Verarbeitungszeit, 1 s Reaktionszeit, N = 30,

L = 0,5, C = 16.000 *30 / [ 0,5 (30 s + 1 s)] bit/s = 31.000 bit/s

=> 64.000 bit/s Leitung

Page 8: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 8

Client/Server-Architektur

TCP/IP-Protokoll

Höhere Protokolle / Schnittstellen

Datenaustausch / Verteilungsstrategie

Übersicht : Netzwerkprotokolle

Page 9: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 9

TCP/IP-Protokoll im R/3 Netzwerk

•Das ISO-OSI Modell

1

3

2

4

5

6

7

Page 10: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 10

Das TCP/IP-Protokoll : Begriffsklärung

Anwendungsschicht:HTTP/FTP/DNS/SMTP, etc.

Transportschicht :TCP

Internetschicht:IP

Netzzugangsschicht:PPP/Ethernet/SLIP

3

4

5-7

Page 11: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 11

Das TCP/IP-Protokoll

• TCP/IP ist eine Protokollfamilie, sie deckt die Schichten 3 bis 7 des OSI- Modells ab

• Wird von der Internet Engineering Task Force (www.ietf.org) weiterentwickelt (IPv4 -> IPv6)

• TCP/IP hat sich in den 70ern als offener Standard für verteilte Systeme durchgesetzt(in den Anfängen des Internet : das ARPA-Netz)

Page 12: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 12

Client/Server-Architektur

TCP/IP-Protokoll

Höhere Protokolle / Schnittstellen

Datenaustausch / Verteilungsstrategie

Übersicht : Netzwerkprotokolle

Page 13: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 13

Höhere Protokollschichten von R/3

COM / DCOM

Page 14: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 14

CPI-C

R/3 External Interfaces / Protocols

Höhere Protokollschichten von R/3

Page 15: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 15

Das CPI-C Protokoll (I)

(Common Programming Interface - Communication)

• Low-Level Programmierschnittstelle : Byte-orientiert.

• Kommunikation : R/3-R/2 -Systemen oder R/3-außerhalb

• Verbindungsdefinition ohne explizite Login-Funktion• Historisch bedingt : CPI-C ist ein Vorläufer

von höherer Protokolle

• Dient zur rechnerübergreifenden Programm- Programm-Kommunikation. (z.B. aus ABAP heraus)

• CPI-C war bereits in R/2 implementiert.

CPI-C

Page 16: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 16

Das CPI-C Protokoll (II)

• Sprachneutrale Kommunikationsumgebung aber fehleranfällig (EBCDIC oder ASCII, Big oder Little Endian)

• Ursprünglich eine Implementierung für das LU 6.2 Protokoll auf IBM Mainframe

• CPI-C Komm. wird über ein SAP-Gateway gerouted.

CPI-C

• CPI-C ist „schwierig zu handhaben“

Page 17: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 17

Das CPI-C Protokoll (III)

Gateway-Server (oder CPIC-Server)

CPI-C

Page 18: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 18

• Von SAP definierter Standard : Funktionen werden auf einem entfernten Rechner aufgerufen.

Das RFC-Protokoll (I)

(Remote Function Call)

• in ABAP wurde dazu die RPC (Remote Procedure Call)-Schnittstelle implementiert (aus UNIX).

RFC

Page 19: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 19

Die RFC-Typen (II)

• Synchrone RFCs :

Client wartet bis der Server die Daten zurückliefert.

• Asynchrone RFCs :

Client arbeitet weiter, Server initiiert Callback

• Transaktionale RFCs : (secure asynchon communication)

ACID-Bedingungen

RFC

Page 20: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 20

Das RFC-Protokoll (III)

• RFC übernimmt :• Kommunikationssteuerung

• Parameterübergabe

• Fehlerbehandlung

• 4 periods in an RFC :

• CALL step

• CALL RECEIVE step

• RETURN step

• RETURN RECEIVE step

RFC

Page 21: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 21

Das RFC-Protokoll (IV)

Das RFC-Konzept

RFC

Page 22: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 22

Page 23: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 23

RFC Processing on the Client and Server Side

RFC

Page 24: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 24

RFC Processing on the Client and Server Side (with call back possibility)

Page 25: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 25

Das OLE-Protokoll (I)

• von MS definierte

Standards zur

Programm-

Kommunikation

OLE / COM

Page 26: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 26

R/3 als OLE-Client

RFC

Das OLE-Protokoll (II)

(Object Linking and Enbedding)

OLE / COM

Page 27: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 27

Das OLE-Protokoll (III)

(Object Linking and Enbedding)

• Objekte in Form von EXE, DLL oder OCX-Dateien

• Verbesserungen : COM, DCOM

(Distributed) - Component Object Model

• in der Windows-Welt entstanden, aber Betriebssystem

unabhängig (COM)

OLE / COM

Page 28: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 28

Client/Server-Architektur

TCP/IP-Protokoll

Höhere Protokolle / Schnittstellen

Datenaustausch / Verteilungsstrategie

Übersicht

Übersicht : Netzwerkprotokolle

Page 29: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 29

Application Link Enabling (ALE)

• Datenbank von R/3 ist (bisher) immer eine Zentralsystem

• Dies bietet Nachteile wenn :

• Organisationseinheiten räumlich getrennt sind

• Unternehmen-übergreifende Prozesse vorhanden sind

• die Leistungsfähigkeit stößt an ihre Grenzen

• Lösung ist ALE :

• Verteilung von betriebswirtschaftliche Funktionen und

Anwendungen auf lose R/3-Sysmteme

• Vorbereitete Szenarien

• Kopplung von R/2, R/3 und anderen Systemen

Page 30: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 30

Beispiel für ALE

Page 31: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 31

Technische Grundlagen von ALE

1. Verteilung mit Hilfe von Nachrichtentypen

Anwendungsereignisse werden durch Nachrichten im

R/3-System ausgelöst.

(Nachricht = betriebswirtschaftliche Funktion + Daten)

Diese werden durch sog. Intermediate documents (IDoc)

verteilt (basierend auf tRFC).

2. Verteilung mit BAPIs

BAPIs ermöglichen den Zugriff auf Business-Objekte mit bel.

Hilfsmitteln und Programmiersprachen.

Page 32: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 32

Der Aufbau von IDOCs

Bei R/2 oder R/3 möglich

Page 33: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 33

Technischer Ablauf von ALE mittels IDOCs

Page 34: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 34

ALE - Verteilung mit BAPIs

Page 35: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 35

Client/Server-Architektur

TCP/IP-Protokoll

Höhere Protokolle / Schnittstellen

Datenaustausch / Verteilungsstrategie

Übersicht

Übersicht : Netzwerkprotokolle

Page 36: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 36

Übersicht : Transport-Services

• TCP/IP Transport Control Protocol / Internet Protocol

• IEEE 802 Protokoll und Hardware-Schnittstelle für Ethernet

• X.25 Kommunikationsprotokoll, WAN (Datex-P)

• ISDN Integrated System Digital Network, WAN

• Ethernet Netz-Hardware im LAN-Bereich

• Token Ring Netz-Hardware im LAN-Bereich

• FDDI Fibre Distributed Data Interchange

Page 37: © 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster Seite: 110.11.1999 Netzwerkkommunikation von SAP R/3

© 1999 Chris Loeser Projektgruppe SAP R/3 auf Linux Cluster 10.11.1999 Seite: 37

Übersicht : die Protokolle

• LU 6.2 Logical Unit - IBM Netzwerkprotokoll• CPI-C Common Programming Interface-Communication

(Low-Level)

• RFC Remote Function Calls (High-Level) (auch RPC)

• OLE Object Linking and Embedding

• ALE Application Link Enabling

(Verteilung betriebswirtschaftlicher Objekte)• EDI Electronic Data Interchange

(Austausch von Handelsnachrichten)

• X.500 Electronic Mail (auch SMTP, POP3, IMAP)

• DDE Dynamic Data Exchange

• ODBC Open Data Base Connectivity

• Q-API Queue Application Interface