Distribuerad datormiljö

Inom databehandling utvecklades mjukvarusystemet Distributed Computing Environment ( DCE ) i början av 1990-talet från arbetet av Open Software Foundation (OSF), ett konsortium (grundat 1988) som inkluderade Apollo Computer (en del av Hewlett-Packard från 1989) , IBM , Digital Equipment Corporation och andra. DCE tillhandahåller ett ramverk och en verktygslåda för att utveckla klient/ serverapplikationer. Ramverket inkluderar:

DCE representerade ett stort steg i riktning mot standardisering av arkitekturer , som tidigare varit tillverkarberoende. Liksom OSI-modellen har DCE inte sett mycket framgång i praktisk implementering; dock har dess underliggande koncept haft större inflytande över efterföljande ansträngningar.

Historia

Open Software Foundation (OSF) kom till i stor utsträckning som en del av Unix-krigen på 1980-talet. Efter att Sun Microsystems och AT&T Corporation arbetade tillsammans för att producera UNIX System V Release 4 (SVR4) och vägrade att förbinda sig till rättvis och öppen licensiering av Unix-källkod, ansåg många av de andra Unix-leverantörerna att deras egna marknadsmöjligheter var otillbörligt missgynnade. Distributed Computing Environment är en komponent i OSF-erbjudandena, tillsammans med Motif, OSF/1 och Distributed Management Environment (DME).

Som en del av bildandet av OSF bidrog olika medlemmar med många av sina pågående forskningsprojekt såväl som sina kommersiella produkter. Till exempel bidrog HP/Apollo med sina Network Computing Environment (NCS) och CMA Threads-produkter. Siemens Nixdorf bidrog med sin X.500-server och ASN/1-kompilatorverktyg. På den tiden var nätverksdatorer ganska populärt, och många av de inblandade företagen arbetade med liknande RPC -baserade system. Genom att integrera säkerhet, RPC och andra distribuerade tjänster i en enda "officiell" distribuerad datormiljö kan OSF erbjuda en stor fördel jämfört med SVR4, vilket gör att alla DCE-stödjande system (nämligen OSF/1) kan samverka i ett större nätverk.

DCE-systemet var till stor del baserat på oberoende utvecklingar gjorda av var och en av partnerna. DCE/RPC härleddes från Network Computing System (NCS) som skapades på Apollo Computer . Namntjänsten härrörde från arbete utfört på Digital. DCE/DFS baserades på Andrew File System (AFS) som ursprungligen utvecklades vid Carnegie Mellon University . Autentiseringssystemet var baserat på Kerberos och auktoriseringssystemet baserat på åtkomstkontrollistor ( ACL). Genom att kombinera dessa funktioner erbjuder DCE ett ganska komplett C -baserat system för nätverksberäkning. Vilken maskin som helst i nätverket kan autentisera sina användare, få tillgång till resurser och sedan anropa dem på distans med hjälp av ett enda integrerat API .

Framväxten av Internet , Java och webbtjänster stal mycket av DCE:s mindshare under mitten till slutet av 1990-talet, och konkurrerande system som CORBA lerade också vattnet.

En av de största användningsområdena för DCE idag är Microsofts DCOM- och ODBC -system, som använder DCE/RPC (i MSRPC ) som sitt nätverkstransportlager.

OSF och dess projekt blev så småningom en del av The Open Group , som släppte DCE 1.2.2 under en fri mjukvarulicens (LGPL ) den 12 januari 2005. DCE 1.1 var tillgänglig mycket tidigare under OSF BSD-licensen och resulterade i att FreeDCE blev tillgängligt sedan 2000. FreeDCE innehåller en implementering av DCOM.

En av de stora implementeringarna av DCE var Encina , som ursprungligen utvecklades av Transarc (som förvärvades av IBM ). IBM använde Encina som en grund för att porta sitt primära transaktionsbehandlingssystem för stordatorer ( CICS ) till icke-stordatorplattformar, som IBM TXSeries . (Men senare versioner av TXSeries har tagit bort Encina-komponenten.)

Arkitektur

Den största förvaltningsenheten i DCE är en cell . De högsta behörigheterna inom en cell tilldelas en roll som kallas celladministratör , normalt tilldelad "användaren" cell_admin . Observera att detta inte behöver vara en riktig användare på OS-nivå. Cell_admin har alla privilegier över alla DCE-resurser i cellen. Privilegier kan tilldelas eller tas bort från följande kategorier: user_obj, group_obj, other_obj, any_other för en given DCE-resurs. De tre första motsvarar ägaren, gruppmedlemmen respektive annan DCE-huvudman. Den sista gruppen innehåller alla icke-DCE-principaler. Flera celler kan konfigureras för att kommunicera och dela resurser med varandra. Alla huvudmän från externa celler behandlas som "utländska" användare och privilegier kan tilldelas eller tas bort i enlighet med detta. Utöver detta kan specifika användare eller grupper tilldelas privilegier på valfri DCE-resurs, något som inte är möjligt med det traditionella UNIX-filsystemet, som saknar ACL:er.

Huvudkomponenter av DCE inom varje cell är:

  1. Säkerhetsservern som ansvarar för autentiseringen
  2. Cell Directory Server (CDS) som är lagringsplatsen för resurser och ACL:er och
  3. Den distribuerade tidsservern som ger en korrekt klocka för att hela cellen ska fungera korrekt

Moderna DCE-implementationer som IBM:s är fullt kapabla att samverka med Kerberos som säkerhetsserver, LDAP för CDS och Network Time Protocol- implementeringarna för tidsservern.

Även om det är möjligt att implementera ett distribuerat filsystem med DCE-underbyggen genom att lägga till filnamn till CDS och definiera lämpliga ACL på dem, är detta inte användarvänligt. DCE/DFS är en DCE-baserad applikation som tillhandahåller ett distribuerat filsystem på DCE. DCE/DFS kan stödja repliker av en filuppsättning (DCE/DFS-motsvarigheten till ett filsystem) på flera DFS-servrar - det finns en läs-skrivkopia och noll eller fler skrivskyddade kopior. Replikering stöds mellan läs-skriv- och skrivskyddade kopior. Dessutom stöder DCE/DFS också vad som kallas "backup"-filuppsättningar, som om de definieras för en filuppsättning kan lagra en version av filuppsättningen som den var före den senaste replikeringen.

DCE/DFS tros vara världens enda distribuerade filsystem som korrekt implementerar hela POSIX-filsystemets semantik, inklusive byteintervalllåsning. DCE/DFS var tillräckligt pålitligt och stabilt för att kunna användas av IBM för att köra back-end-filsystemet för OS -webbplatsen 1996, sömlöst och automatiskt distribuerat och redigerat över hela världen i olika tidszoner.

externa länkar