1 2 AP ’98/99, college 1 - widya/AP/sh-col1.pdf · Data communications, computer networks and...
Transcript of 1 2 AP ’98/99, college 1 - widya/AP/sh-col1.pdf · Data communications, computer networks and...
AP ’98/99, college 1
1
.
APPLICATIEPROTOCOLLEN
(cursus 1998-1999)
1 (24-8) Inleiding: architecturen, basisconcepten
2 (31-8) Informatietechnologie entelecommunicatie (IT&T) standaarden
3 (7-9) OSI sessielaag en presentatielaag
4 (14-9) Formaat- en coderingsstandaarden
5 (21-9) OSI applicatielaag, flexibelearchitecturen
6 (12-10) Gedistribueerde transactieverwerking
7 (19-10) Electronische berichten
8 (26-10) Directorie Diensten
AP ’98/99, college 1
2
Applicatieprotocollen
(cursus 1998-1999)
Ing Widyakamer INF 5011, tel. 3945
Eddie Michiels
secretariaat TIOS: kamer INF 5047, tel. 3856/3767
AP ’98/99, college 1
3
Doelen / eindtermen
• kennis van applicatieprotocollen(OSI en Internet)
• inzicht in samenhang tussen protocollen enprotocolelementen
Voorkennis
• Tele-Informatica (214100) en• Ontwerpen van telematicasystemen (214005)
Materiaal
• collegedictaat
• transparanten (http: //wwwtss.cs.utwente.nl/~widya/AP
• (eventueel) handouts
Toetsing
• schriftelijke tentamens (in tegenstelling tot wat instudiegids staat):week 47 donderdag middagweek 1 maandag middag (herkansing)week 34 donderdag middag (herkansing)
AP ’98/99, college 1
4
Literatuur
• HalsallData communications, computer networks andopen systemsAddision-Wesley
• TanenbaumComputer networksPrentice Hall
• Piscitello & ChapinOpen systems networking: TCP/IP and OSIAddison-Wesley
• StevensTCP/IP illustrated, volume 1& 3Addison-Wesley
• HebrawiOSI upper layer protocols and practicesMcGraw-Hill
• Henshall & ShawOSI explained: end-to-endcomputer communication standardEllis Horwood
• l’Anson & PellUnderstanding OSI applicationsPrentice Hall
AP ’98/99, college 1
5
College 1
• definitie en relevantie vakgebied
• architecturen
• basisconcepten
• specificatietechnieken
• time sequence diagram• state diagram/table• (semi-) formele talen
AP ’98/99, college 1
6
Definitie vakgebied
Applicatieprotocollen zijn gestandaardiseerdeafspraken
• m.b.t. de samenwerking van de communicatiegerichte delen van een gedistribueerdeapplicatie
• met als doel een communicatiefunctie terealiseren binnen de gedistribueerde applicatie
Applicatieprotocollen worden op twee manierenbekeken:
• infrastructureel perspectief: services (‘diensten’)• systeem perspectief: protocol algorithmen
Applicatieprotocollen worden beschreven in termenvan
• formaat en codering van boodschappen• inhoud van protocol-interne boodschappen• volgorde van uitwisseling van boodschappen• gebruik van onderliggende communicatie-
infrastructuur voor het zenden/ontvangen vanboodschappen
AP ’98/99, college 1
7
Beroepsperspectieven
• marktsector (financiële sector, handel endistributie, overheid, ...)
• dienstenproviders (KPN, Libertel, InternetService Providers, ...)
• software houses en adviesbureaus
• computerfabrikanten (IBM, Sun, ...) &telecom/datacom-fabrikanten (Lucent, Ericsson,Alcatel, Siemens, Philips, Cisco, ...)
AP ’98/99, college 1
8
Relevantie vakgebied
• aandeel IT&T in EU 4de kaderprogramma: 28 %
• volume IT&T markt in EU: 414 x 109 Ecu
• ‘harde’ producten: 32 %• ‘zachte’ producten: 68 %• belangrijkste groei in dienstensectoren
• dus: waardetoevoeging aan hardwareplatformensteeds belangrijker
• Nederland scoort ondermaats in 4dekaderprogramma: < 6% van totaal budget
telecomdiensten
telecomapparatuur
communicatieapparatuur
computersoftware& -diensten
consumentenelectronica
multimediadiensten
microelectronica
35%
8%14%
20%
7%
13%
3%
AP ’98/99, college 1
9
Telecom/telematica onderzoekgebieden
nieuwetechnologieën nieuwe
diensten
nieuweinfrastructuren
snelle ontwikkelingvan diensten
strategisch/effectiefgebruik van diensten
voorkomen
wetgevingm.b.t. IT&T
Informatica
Bedrijfskunde,Rechten, Economie
randvoorwaarden
netwerkmisbruik
AP ’98/99, college 1
10
Architecturen
• distributie van single-computer applicaties
• samenwerking van delen van gedistribueerdeapplicatie impliceert koppeling vancomputersystemen
application
systeemprog.& OS
hardware
app. part 1
systeemprog.& OS
hardware
appl. part 2
systeemprog.& OS
hardware
distribution
?
AP ’98/99, college 1
11
• gedistribueerde computersystemen encomputer/communicatienetwerken
• hiërarchie van protocollen in een operationelecontext
• gebruikersgedefinieerde/domeinspecifiekeapplicatieprotocollen: funds transfer,electronic mail, ...
• utility protocollen (geïmplementeerd doorOS): file transfer, virtual terminal support
• netwerkprotocollen: algemene ondersteuningvan gedistr. apps., end-to-end communicatie,node-to-node communicatie, signaal-transmissie
app. part 1
syst. prog.OS, HW
appl. part 2
netw. access
syst. prog.OS, HW
netw. access
.
networkSW/HW
networkSW/HW
AP ’98/99, college 1
12
Gelaagde netwerkarchitecturen
• OSI Reference Model (OSI-RM)ISO/ITU-T
• Internet Protocol Suite (IPS)IETF
• Systems Network Architecture (SNA)IBM
Gelaagde netwerkfuncties
• transmission• data transfer (medium access)• error detection, error correction• addressing, routing• flow control• segmentation, blocking, concatenation• multiplexing, splitting• dialogue control• data representation• network security• network management• application functions:
• remote terminal• file transfer• message handling• etc.
AP ’98/99, college 1
13
OSI Reference Model
76543'2'1'
76543''2''1''
3'2'1'
3''2''1''
application protocol
presentation protocol
session protocol
transport protocol
network prot.
data link prot.
physical prot.
network prot.
data link prot.
physical prot.
OSI medium OSI medium
application layer
presentation layer
session layer
transport layer
data link layer
physical layer
network layer
transmission
data transfer, error handling
addressing, routing, flow control
multiplexing, splitting,
dialogue control,
blocking, flow control, error handling
segmentation, concatenation
data representaion
application functions
AP ’98/99, college 1
14
Internet Protocol Suite
• vaak aangeduid als TCP/IP
• ontwikkeld door DoD in midden jaren ’60
• bood ‘internetworking’ aan onderzoeksinstituten
• geïntegreerd in BSD UNIX
• evolueert voortdurend
• enorme groei
ApplicationServices
Transport
Internetwork
NetworkInterface
TE
LNE
T
TCP UDP
IP IGMProuting
protocols
IEEE
AR
P
RA
RP
X.25
SM
TP
FT
P
DN
S
SN
MP NFS
XDR
RPC
802.3
Application
Presentation
Session
Transport
Network
Data Link
Physical
IPS OSI
AP ’98/99, college 1
15
Systems Network Architecture
• geïntroduceerd door IBM in 1974
• sterk geëvolueerdeerst: hierarchische structuur (centrale ‘hosts’)
• ondersteund verschillendenetwerktechnologieën
• 7 lagen (niet dezelfde als OSI)
• (nog steeds) wijdverbreid
Transaction Services
Presentation Services
Data Flow Control
Transmission Control
Virtual Route Control
Pat
h C
ontr
ol
Explicit Route Control
Transmission Group Control
Data Link Control
Physical Control
Application
Presentation
Session
Transport
Network
Data Link
Physical
OSISNA
AP ’98/99, college 1
16
Distributed computing platforms
• verbergen van complexiteit vannetwerkinterfaces en OS
• distributie ‘transparant’ maken
• ondersteuning bieden voor applicatie-ontwikkeling
• voorbeelden:
• DCE (Distributed Computing Environment)van OSF (Open Software Foundation)
• CORBA (Common Object Request BrokerArchitecture) van OMG (Object ManagementGroup)
• DCOM (Distributed Component ObjectModel) van Microsoft
distributed/client-server applications
middleware
networks
AP ’98/99, college 1
17
Basisconcepten
• service
• service primitive
• protocol
• protocol data unit
• protocollaag
• protocol data unit transporteren in dataparameter van service primitive
• gelaagde netwerkarchitectuur
• architectural planes & viewpoints
AP ’98/99, college 1
18
Service concept
• functioneel gedrag van een gedistribueerdsysteem in de context van zijn (gedistribueerde)gebruikersomgeving
• verzameling van interakties tussen systeem(service provider) en gebruikers (serviceusers)
- waarden vastgesteld in interaktie
• relaties tussen deze interakties
- lokaal - interlokaal
- tijdvolgorde - waarde-afhankelijkheid
• eigenschappen van interakties
• eenheid van gedrag• geen onderscheid tussen
verantwoordelijkheden van service provideren service users
OSI term: service primitive
AP ’98/99, college 1
19
service provider
serviceuser
serviceuser
serviceuser
AP ’98/99, college 1
20
service provider
serviceuser
serviceuser
serviceuser
AP ’98/99, college 1
21
service provider
serviceuser
serviceuser
serviceuser
service access point
AP ’98/99, college 1
22
Service primitive
• definitie omvat
• naam: bijv. CONNECT
• type: request, indication, response, confirm
• parameters: service-specifieke parameters,data parameter
• voorbeeld: Session connection establishmentprimitives
--------------------------------------------------------------------Primitive S-CONNECT
Parameter req ind rsp cnf--------------------------------------------------------------------Session Connection Identifier U C(=) U C(=)Calling Session Address M MCalled Session Address M MResponding Session Address M MResult M M(=)Quality of Service M M M MSession Requirements M M(=) M M(=)Initial Synchronization Point
Serial Number C C(=) C C(=)Initial Assignment of Tokens C C(=) C C(=)SS-user data U C(=) U C(=)--------------------------------------------------------------------
AP ’98/99, college 1
23
service provider
serviceuser
serviceuser
req cnf rsp indS-CONNECT S-CONNECT
AP ’98/99, college 1
24
Protocol concept
• samenwerking tussen (geografisch verspreide)deelsystemen, zodanig dat de vereiste servicewordt geleverd
• service provider gedecomponeerd ingeografisch verspreide deelsystemen (protocolentities) en een onderliggend gedistribueerdsysteem (lower level service provider)
• verzameling van
• interakties tussen ‘peer’ protocol entities:uitwisseling van protocolberichten
OSI term: protocol data unit (PDU)
• interakties tussen protocol entities en serviceusers: service primitives
• interakties tussen protocol entities en lowerlevel service provider: service primitives
• relatie tussen deze interakties
AP ’98/99, college 1
25
lower level service provider
serviceuser
serviceuser
serviceuser
protocolentity
protocolentity
protocolentity
AP ’98/99, college 1
26
lower level service provider
serviceuser
serviceuser
serviceuser
protocolentity
protocolentity
protocolentity
AP ’98/99, college 1
27
Protocol data unit
• definitie omvat
• formaat: rangschikking en structuur vanparameters
• codering: binaire codering van parameters ennaam/type
• voorbeeld: CONNECT SPDU
SI LIparameter
fielduser data
field
PGI LI PGI LI PI LI PI LI PI LI
PI LI PI LI PI LI PI LI PI LI PI LI PI LI PI LI
Cal
ling
SS
-use
r re
fere
nce
Com
mon
Ref
eren
ce
Add
ition
al R
efer
ence
Info
rmat
ion
Pro
toco
l Opt
ions
TS
DU
max
imum
Siz
e
Ver
sion
Num
ber
Initi
al S
eria
l Num
ber
Tok
en S
ettin
g Ite
m
S-U
ser
Req
s
Cal
ling
S-S
el
Cal
led
S-S
el
AP ’98/99, college 1
28
Zonder afbeelding op lower level service
service provider
serviceuser
serviceuser
req cnf rsp indS-CONNECT S-CONNECT
CONNECT
ACCEPT/REFUSE
AP ’98/99, college 1
29
Protocollaag
• protocol opgebouwd uit protocol layer en lowerlevel service provider
• (N)-service• (N)-protocol• (N-1)-service
• herhaalde toepassing van service-decompositielevert een gelaagde netwerkarchitectuur
basis voor ontwerpmethode voor complexeprotocollen
AP ’98/99, college 1
30
Relatie tussen service primitives enPDUs
• (N)-PDU transporteren in data parameter van(N-1)-service primitives
• directe afbeelding tussen (N)-service primitivesen (N-1)-service primitives
• gebruik van (N)-service primitives door (N)-protocol
(N)-SP
(N-1)-SP
(N)-PDU
data parameter
AP ’98/99, college 1
31
Specificatietechnieken
• (informele) tekst
• time sequence diagram
• state diagram
• state table
• formele talen
• LOTOS• Estelle• SDL• Z• Petri-netten• etc.
AP ’98/99, college 1
32
Time sequence diagram
• service primitives uitgezet op tijdassen(één tijdas per service access point)
• relaties tussen service primitives aangegevendoor verbindingslijnen
• nadelen
• exemplarisch (één mogelijke volgorde)
• alleen voor service
• onzichtelijker naarmate meer SAPsbetrokken zijn bij service
• voorbeelden
• point-to-point connection-oriented datatransfer
• multi-party call setup
AP ’98/99, college 1
33
CONNECT ind
CONNECT rsp
DATA ind
DATA indDATA req
DISCONNECT ind
CONNECT req
CONNECT cnfDATA req
DATA req
DATA indDISCONNECT req
SAP 1 SAP 2
time
SETUP ind
SETUP rsp
SETUP cnf
SETUP req
SETUP cnf
SAP 1 SAP 2
time
SAP3
SETUP ind
SETUP rsp
SETUP cnf
AP ’98/99, college 1
34
State diagram
• toestanden en toestandovergangen
• toestandovergang vindt plaats wanneer eenbepaalde gebeurtenis optreedt: incoming event
• bij service: service primitive
• bij protocol: req/rsp service primitive,incoming PDU, (internal) protocol event
• bij protocol veroorzaakt een incoming event eennieuwe gebeurtenis: outgoing event
• ind/cnf service primitive, outgoing PDU
• nadelen
• interlokale relaties niet gerepresenteerd
• onoverzichtelijker naarmate er meertoestanden en mogelijke gebeurtenissen zijn
• voorbeelden
• service: connection-oriented data transfer• protocol: Session connection establishment
AP ’98/99, college 1
35
idleoutgoing
connectionpending
datatransferready
incomingconnection
pending
CONNECT cnf
CONNECT rsp
DISCONNECT req, ind
DIS-CONNECTreq, ind
CONNECT req
DIS-CON-NECTreq,ind
CON-NECTind
DATA req, ind
AP ’98/99, college 1
36
idle, await
awaitAC
idle,TC
SCONreq;
TCONind;TCONrsp
no TC
TCONreq
TCONcnf
datatransferready
awaitSCONrsp
CN;SCONind
TCONcnf;CN
AC;SCONcnf
SCONcnf;AC
AP ’98/99, college 1
37
State table
• gebeurtenissen (incoming events) X toestanden
• doorsnede geeft aan of een toestandovergangmogelijk is
• condities• bij protocol: outgoing event• akties• nieuwe toestand
• nadelen
• interlokale relaties niet gerepresenteerd
• voorbeelden
• service: connection-oriented data transfer• protocol: Session connection setup
AP ’98/99, college 1
38
CONNECT req
CONNECT ind
CONNECT rsp
CONNECT cnf
DISCONNECT req
DISCONNECT ind
DATA req
DATA ind
idle
outgoingconnection
pending
incomingconnection
pending
datatransferready
(0) (1) (2) (3)
1
2
3
3
0 0 0
0 0 0
3
3
AP ’98/99, college 1
39
SCONreq
SCONrsp
CN
AC
await awaitAC(2)
TCONcnf
TCONcnf
TCONind
TCONreq1
TCONrsp3
idle,no TC
(0)
CN2
(1)
SCONcnf5
idle,TC(3)
SCONind4
awaitSCONrsp
(4)
AC5
5 = data transfer ready
AP ’98/99, college 1
40
Viewpoints
• viewpoints corresponderen met perceptie vanverschillende actoren
• enterprise: organisatiestructuur,bedrijfsprocessen, beleid, doelen
• information: informatiebronnen en -bestemmingen, informatiestromenhiertussen
• computation: applicatiecomponenten eninterakties hiertussen
• engineering: systeemstructuur in termen vangedistribueerde componenten t.b.v.informatieverwerking, opslag encommunicatie
• technology: benodigde hardware/software
• ontwerper kan eisen van verschillende actorenéén voor één incorporeren
Nadelen:
• geen algemene overeenstemming m.b.t.preciese scope van viewpoints
• verandering in één viewpoint heeft onduidelijkeconsequenties in andere viewpoints!