Tartalom. Történeti áttekintés. Történeti áttekintés 2011.03.23. Architektúra DCOM vs CORBA. Szoftvertechnológia



Hasonló dokumentumok
Tartalom DCOM. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés

Osztott alkalmazások fejlesztési technológiái Áttekintés

Operációs rendszerek. A Windows NT felépítése

Komponens modellek. 3. Előadás (első fele)

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

A SZOFTVERTECHNOLÓGIA ALAPJAI

eseményvezérelt megoldások Vizuális programozás 5. előadás

Osztott rendszerek (Distributed

Kommunikáció. 3. előadás

Osztott rendszerek (Distributed. systems) Bevezetés. Tartalom. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék

Operációs rendszerek. Windows NT. A Windows NT

Osztott rendszerek. Krizsán Zoltán 1 Ficsór Lajos 1. Webalkalmazások fejlesztése tananyag. Miskolci Egyetem. Bevezetés A múlt - történelem A jelen

Fábián Zoltán Hálózatok elmélet

CORBA Áttekintés. Mi a CORBA? OMG and OMA. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék

Számítógépes hálózatok: LAN, MAN, WAN

Számítógép hálózatok

Alap protokollok. NetBT: NetBIOS over TCP/IP: Name, Datagram és Session szolgáltatás.

AIX Fast Connect 3.2 kézikönyv

Osztott Objektumarchitektúrák

Kommunikáció. Folyamatok közötti kommunikáció. Minden elosztott rendszer alapja

IBM Tivoli Access Manager for WebLogic Server Felhasználóikézikönyv. 3.9-es verzió GC

applikációs protokollok

Rétegezett architektúra HTTP. A hálózatfejlesztés motorját a hálózati alkalmazások képezik. TCP/IP protokoll készlet

Novell Nterprise Branch Office: a távoli iroda felügyeletének leegyszerűsítése

BorderManager Enterprise Edition

Fábián Zoltán Hálózatok elmélet

Fábián Zoltán Hálózatok elmélet

EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA

Előnyei. Helyi hálózatok tervezése és üzemeltetése 2

NetWare 6 technikai áttekintés 2. rész

20. Tétel 1.0 Internet felépítése, OSI modell, TCP/IP modell szintjenek bemutatása, protokollok Pozsonyi ; Szemenyei

Hálózati útmutató. A biztonságos és megfelelõ kezelés érdekében használat elõtt olvassa el az Általános Beállítási Útmutató biztonsági információit.

SSH haladóknak. SSH haladóknak

4. Az alkalmazások hatása a hálózat tervezésre

iseries Access for Windows: Adminisztráció

Book Template Title. Author Last Name, Author First Name

A B C D E F. F: 4. LAN port LED G: Táp csatlakozó H: 4. LAN port I: 3. LAN port J: 2. LAN port

Ellenőrző lista. 2. Hálózati útvonal beállítások, kapcsolatok, névfeloldások ellenőrzése: WebEC és BKPR URL-k kliensről történő ellenőrzése.


Tűzfal megoldások. ComNETWORX nap, I. 30. ComNETWORX Rt.

Alkalmazás technológiai frissítés migrációs és üzemeltetési tapasztalatok

IBM DB2 Connect felhasználói kézikönyv

Elemi alkalmazások fejlesztése IV. Adatbázis-kezelés ActiveX vezérlıkkel - 1

CAD-CAM

IBM i. Szerviz és támogatás 7.1

1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7

Router konfigurációs útmutató

PRINTER Controller Type 1013

Kommunikáció. Távoli eljáráshívás. RPC kommunikáció menete DCE RPC (1) RPC - paraméterátadás. 3. előadás Protokollok. 2. rész

fájl-szerver (file server) Az a számítógép a hálózatban, amelyen a távoli felhasználók (kliensek) adatállományait tárolják.

Tarantella Secure Global Desktop Enterprise Edition

15. Tétel. Extran et olyan biztonsá gos, privát, intranet hálózat amely internet protokol lok segítség ével teszi lehetővé a

Organizáció. Számítógépes Hálózatok Gyakorlati jegy. Vizsga. Web-oldal

CORBA bevezetés. Paller Gábor Internet és mobil rendszerek menedzselése

Everything Over Ethernet

Számítógépes Hálózatok ősz 2006

Organizáció. Számítógépes Hálózatok ősz Tartalom. Vizsga. Web-oldal

Fábián Zoltán Hálózatok elmélet

Szoftvertelepítési útmutató

DB2 9.5 változat for Linux, UNIX, Windows

Üzleti kritikus alkalmazások Novell Open Enterprise Serveren

Bonobo: A GNOME CORBA alapú komponens-megoldása Unixokra

Tűzfalak működése és összehasonlításuk

NetWare 5 ÁLTALÁNOS ISMERTETÕ

2. fejezet Hálózati szoftver

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Operációs rendszerek MINB240 V2+2+0

A számítógépes hálózat célja

A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA-

WorldSkills HU 2008 döntő Gyakorlati feladat

Non-stop hozzáférés az üzleti információkhoz bárhol, bármikor és bármilyen eszközzel

1. Ismerkedés a Hyper-V-vel, virtuális gépek telepítése és konfigurálása

LW310V2 Sweex Wireless 300N Router

VoIP biztonság. BME - TMIT Médiabiztonság feher.gabor@tmit.bme.hu

Debreceni Egyetem Informatikai Kar A WINDOWS SERVER 2003 HÁLÓZATI MEGOLDÁSAI

Infokommunikációs alkalmazásfejlesztő. Informatikai alkalmazásfejlesztő

A DUNAÚJVÁROSI FÕISKOLA SZÁMÍTÓGÉP HÁLÓZATA, AZ OS/2 SZERVERREL KAPCSOLATOS TAPASZTALATOK

SAMBA. Forrás: Lajber Zoltán: SAMBA alapok dia, SZIE

DWL-G520 AirPlus Xtreme G 2,4GHz Vezeték nélküli PCI Adapter

P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához. Rendszerterv. Sipos Gergely

S04-2 Elosztott alkalmazások készítése

Csatlakozás az IBM i rendszerhez IBM i Access for Windows: Telepítés és beállítás

Windows biztonsági problémák

Web Services. (webszolgáltatások): egy osztott alkalmazásfejlesztési plattform

A készülék fő egységei X1 X1 (kizárólag vezeték nélküli kamera esetében X1 X1 X1 X1 X1

A CAN mint ipari kommunikációs protokoll CAN as industrial communication protocol

Az adott eszköz IP címét viszont az adott hálózat üzemeltetői határozzákmeg.

Komponens alapú fejlesztés

Symantec Endpoint Protection

Az eszközök közti összeköttetés, azaz csatolás szerint Szorosan csatolt rendszerek

Hálózati réteg, Internet

Operációs rendszerek MINB240 V kredit KF Nagyváradi Anett 0. előadás Bevezetés

DB2 Connect Repülőrajt

Internet-hőmérő alapkészlet

URL-LEL ADOTT OBJEKTUM LETÖLTÉSE (1) URL-LEL ADOTT OBJEKTUM LETÖLTÉSE

IBM Tivoli Endpoint Manager

A SZOFTVER TELEPÍTÉSE ELŐTT TELEPÍTÉS WINDOWS KÖRNYEZETBEN TELEPÍTÉS MACINTOSH KÖRNYEZETBEN HIBAKERESÉS

KIS. KELER Zrt. Az STP KID megvalósítása. KELER Internetwork System

Windows hálózatok. IP cím. Hálózati kapcsolatok nyomonkövetése. < Windows

3. előadás. A TCP/IP modell jelentősége

Átírás:

Tartalom D Szoftvertechnológia előadás Történeti áttekintés Architektúra D vs CORBA 2 Történeti áttekintés 1987 Dynamic Data Exchange (DDE) Windows 2.0-ban Windows alkalmazások közötti adatcsere Ma is használatos (pl. vágólap) NetDDE NetBIOS protokol felett Windows XP-ig használatos (pl. Fekete Macska kártyajáték) A Windows Vista már nem tartalmazza Történeti áttekintés 1990 Object Linking and Embedding (OLE 1.0) Üzenetek helyett dokumentum-megosztás (Virtual Function Table VTBL) Windows 3.0 1993 Component Object Model () Folyamatok közötti ötti kommunikáció Dinamikus objektum-készítés Objektumok nyelv-független megvalósítása 1997-ig nem használták a elnevezést 3 4 1

Történeti áttekintés 1993 OLE 2.0 alapú implementáció Windows 3.1 1994 OLE Custom Controls OLE 2.0-t támogató tárolókba ágyazhatók 1996-tól ActiveX Hálózati megosztása a dokumentumoknak + Windows NT SP 4.0 Új esemény-modell Történeti áttekintés 1997 Distributed Component Object Model (D) Eredeti neve Network OLE Válasz a CORBA-ra RPC-t használ Alternatív implementációk is léteznek Más (nem Windows) rendszerek is támogatják 5 6 A D jellemzői Platform-független Minden olyan operációs rendszerben működik, amely nyújt D támogatást Windows, Unix, Macintosh (tipikusan MS) Nyelv-független C++, Delphi, stb. Átviteli mód-független TCP/IP, UDP. IPX/SPX, NetBIOS, AppleTalk A D lényegében A D a (Component Object Model) kiterjesztése elosztott alkalmazások fejlesztéséhez Válasz a CORBA-ra Továbblépési lehetőség e biztosítása az MS fejlesztésekben 7 8 2

Az Objektum-model elemei Interfész Komponens Platform-független Nyelv-független Microsoft Interface Definition Language (IDL) Lefordítható a szükséges programozási nyelvre Platform-specifikus Számos nyelven készülhet (C, C++, Delphi stb.) 9 Kliens (egy folyamaton belül) Hatékony Komponens a kliens közvetlenül hívja a komponens metódusait egyszerű közvetlen kapcsolat nincs szükség az ORB-re nincs hálózati kommunikáció 10 (folyamatok között) folytatás Kliens LPC LPC Komponens DCE / RPC - "Distributed Computing Environment / Remote Procedure Calls", (lehetővé teszi osztott rendszerek fejlesztését úgy, mintha egyazon gépen futna 11 minden) A DCE/RPC eredetileg a The Open Group fejlesztése Számos verzióban létezik, pl: samba A DCE/RPC Microsoft verziója az "MSRPC", ami a Windows NT-vel jelent meg. 12 3

folytatás LPC Local Procedure Call de gyakran hívják Lightweight Procedure Call vagy Local Inter- Process Communication néven is. Egy nem dokumentált inter-process communication mód, ami a Microsoft Windows NT kernel-ben jelent meg azonos gépen futó folyamatok közötti kommunikációra. 13 folytatás Az LPC egyszerű szinkron request/reply mechanizmust használ, aminek a teljesítménye és biztonsága nem volt kielégítő A Vistától kezdve továbbfejlesztették, ALPC Advanced Local Procedure Call (nagyobb teljesítményű, biztonságosabb. 14 folytatás A kommunikáció már port alapú, A működési mechanizmus már a jól ismert mód: Szerver portot nyit (NtCreatePort) Szerver figyel (NtListenPort) Kliens küld egy igényt (NtConnectPort) tp t) Szerver elfogadja nyit két kommunikációs portot (szerver komm. Port, kliens komm. Port) Kommunikációs csatornák biztosítva a szerver 15 és kliens között (folyamatok között, /folytatás/) folyamatok között már nincs lehetőség közvetlen elérésre Biztosítani kell egy teljesen transzparens és egyszerű elérési módot a kliens és a komponens is a tel kommunikál Stabil, egyszerű 16 4

(távolról) (D) Kliens Komponens Kliens Komponens OLE Registry SCM SCM Registry Hálózat D network protocol 17 SCM: Service Control Modul 18 Alapvetően hogyan működik a kapcsolat? A kliens és a szerver oldali komponens közötti kapcsolat létrehozásának és menedzselésének folyamatát mutatja a következő ábra. Alapvetően a klienstől a szerver oldali komponens felé irányuló adat-áramlás szemléletű blokkdiagram megközelítés a legfontosabb elemek megadásával. 19 20 5

Egy picit másként nézve Idézzük fel a jó öreg 7 rétegű OSI modellt a D vizsgálatához Alapvetően igaz, hogy a kapcsolat menedzselése független a komponens bonyolultságától, Csak az adat-áramlás intenzitását befolyásolja a komponens funkcionalításának mértéke, az alpvető aktivitásokat nem 21 22 (folytatás ) Client Alapvető tulajdonsága, hogy szolgáltatást igényel a funkciója végrehajtásához Az ő szemszögéből nézve a komponens ott van mellette és csak rá vár Szolgáltatás: erőforrás vagy adat 23 OLE32 DLL Egy objektum-példány létrehozásához szükséges metódusokat tartalmazza 5 metódus áll rendelkezésre egy remote object létrehozására: CoCreateInstanceEx(), CoGetInstanceFromFile(), CoGetInstanceFromStorage(), CoGetClassObject(), és CoGetClassObjectFromURL(). Az Mscoree.dll-t hívja meg a CCW ( Callable Wrapper) létrehozására a komponens részére. 24 6

Service Control Manager (SCM) A kliens és szerver közötti kapcsolatfelvételért felelős elem. A D az SCM-met csak az objektum létrehozására használja. Az implementáció ió a Rpcltscm.dll TransportLoad() metodusával történik meg. 25 Proxy Biztosítja a szerver jelenlétét a kliens címtartományában. A Proxy-t az operációs rendszer hozza létre és menedzseli A Proxy lényegében egy táblázat, amely a runtime kéréseinek megfelelő interfészeket tartalmazza Segítségével a kliens úgy látja, mintha a szerver a saját gépen lenne A Windows pl. a CreateProxyFromTypeInfo() metodust aktivizálja az Rpcrt4.dll fájlból egy proxy létrehozására. 26 runtime Az operácios rendszer azon elemeit foglalja magában, amelyek a kliensszerver kommunikációt támogatják. A runtime úgy a folyamaton belüli, mint a folyamatok közötti kliens-szerver kapcsolat alapja. provider Az adatcserében résztvevő minden elem jogosultságának megfelelő kezelést biztosítja A kapcsolat létrehozása érdekében bejelentkezteti a klienst a szerverre Minden adatcserét résztvevő adatot titkosítással véd. 27 28 7

A Windows számos security provider-t támogat úgy lokális hálózat, mint internet szinten: NT LAN Manager (NTLM, standard Windows NT security protocol), Kerberos, Distributed Password Authentication (DPA, which is used by CompuServe and MSN), Secure Sockets Layer (SSL)/ Private Communications Technology (PCT), Third party Distributed Computing Environment (DCE) providers. 29 D Network Protocol ( Network Protocol) Egy protokollt (szabály rendszert), határoz meg, amely távoli szerveren elhelyezkedő objektumokkal történő kapcsolat létrehozását támogatja. Ez a blokk tartalmazza egy komponens protokoll implementálásához szükséges összes elemet, amelyek az applikáció szintjén szükségesek A Microsoft dokumentációkban ennek az elemnek többféle elnevezése is megtalálható, leginkább D wire protocol néven hivatkoznak rá. Alacsony szintű adat transzfer protokoll, ami a fejlesztő 30 számára nem látható már (nem is kell törődni vele). A biztosítja a hálózat különböző szintjein az alacsony szintű hálózati kezelést. A hálózati kommunikáció többféle protokollt igényel, amelyeket a tartalmazza. Egy tipikus tartalmazza pl: TCP/IP, Winsock driver, User Datagram Protocol (UDP), Internet Protocol (IP), Ethernet driver. Az Ethernet Network Interface Card (NIC) a fizikai hálózati kapcsolatért felelős. (az ábrán nem 31 szerepel) Stub A kliens objektumot reprezentálja a szerver címterében. Feladata hasonló, mint a kliens oldalon a Proxy-é (segítségével a szerver egy lokális klienssel kommunikál) A Windows a CreateStubFromTypeInfo() metódust használja az Rpcrt4.dll fájlból egy stub létrehozására. 32 8

A D használata 1. Megosztandó objektum elkészítése Komponens Interfész(ek) Proxy 2. Proxy objektum és az interfészek eljuttatása a felhasználói oldalra 3. Proxy és interfészek regisztrációja Regisztrációs adatbázisban (registry) A innen olvassa ki az objektum elérhetőségét (a tároló szerver címét) 4. Az interfész lefordítása a használt nyelvre 5. Az objektum felhasználása a programunkban D vs CORBA D CORBA Egy objektumnak több interfésze is lehet Az interfészeket IDL nyelven írja le A kliens egy interfészére mutató referencián keresztül használja az objektumot RPC alapú kliensszerver kommunikáció Többszörös öröklődés az interfészek között Az interfészeket IDL nyelven írja le A kliens a klienscsonkon keresztül használja az objektumot RPC alapú kliensszerver kommunikáció 33 34 Irodalom http://www.wikipedia.orgwikipedia http://msdn2.microsoft.com/enus/library/ms809340.aspx http://www.infosys.tuwien.ac.at/staff/tg/teac hing/unizh/cbse/slides/lecture11.pdf http://lass.cs.umass.edu/~shenoy/courses/s pring07/lectures/lec25.pdf data.uta.edu/~ramesh/cse5306/dcom parison.ppt 35 9