Priv.-Doz. Dr. Konrad Froitzheim

Total Page:16

File Type:pdf, Size:1020Kb

Priv.-Doz. Dr. Konrad Froitzheim

Kommunikationsdienste

Priv.-Doz. Dr. Konrad Froitzheim

Konrad Froitzheim: Kommunikationsdienste 1 5. Communication Services - a Taxonomy • Space and time - same - differenttime (synchronoussame - asynchronous) (synchronous)different (asynchronous) location billboard local conversationconferenceinformation-systemvideo-on-demand tele-conferencedistributedletter, packet documents distributedtele-workinformation-systemdistributed

Konrad Froitzheim: Kommunikationsdienste 2 • Topology andas stimeociation time 1:1 dgerfoinuepd gorpoeunp synchronous face-to-face comneferteinngce raTdVio database query asynchronous mexecshsaanggee- mail list mabsisl lbmoairlding

• participation - communication between humans - communication person - machine

Konrad Froitzheim: Kommunikationsdienste 3 • Communication person - machine - see F. Fluckiger Kommunikation Mensch Ressource

Interaktiv Verteildienst

Informations- Empfänger abfrage Transaktions- Abspiel- system gerät

- local: movie, jukebox, multimedia-kiosk - distributed: TV, WWW

Konrad Froitzheim: Kommunikationsdienste 4 - person - instrument?

Konrad Froitzheim: Kommunikationsdienste 5 • Communication between humans - automatically distributed system Kommunikation zwischen Menschen

Echtzeit- Zeitversetzte Kommunikation Kommunikation

Zwiegespräch Briefe

Konferenz

Verteildienst Newsguppen

Konrad Froitzheim: Kommunikationsdienste 6 • ITU classifies communication services • Interactive services (ITU-T, CCITT) - conversational services real-time services dialogue-oriented end-to-end information exchange - messaging services user-to-user-communication temporary storage in the network example: electronic mail - retrieval services dialogue-oriented database queries example: videotex • Distribution services (ITU-R, CCIR) - distribution without individual presentation control example: radio and TV - distribution with individual presentation control example: Video-on Demand

Konrad Froitzheim: Kommunikationsdienste 7 • Role-based taxonomy of communication services

consumptive services cooperative services services postal service telephone Radio, TV tele-presence Interactive TV tele-commuting information systems teaching World Wide Web work processes roles provider participant consumers

Konrad Froitzheim: Kommunikationsdienste 8 • Communicationinteraction services and interactivity informationtelephone systemstele-presencetele-commute tele-conference interactive TVwork-flow video-on-demandtele-teaching electronic consumeTVradieo mail co-operate

Konrad Froitzheim: Kommunikationsdienste 9 • Component based taxonomy [Froitzheim, 1997] ApplikationKontrolleKontrolleApplikation Adapter Kanal Adapter communicationapplication sservice transport… consumptive services co-operative services control… application elements directory services

Konrad Froitzheim: Kommunikationsdienste 10 6. Consumptive Services 6.1 Multimedia distribution services • Audio and video - Radio: 40 kHz 192 kbit/s (MPEG-audio) - TV: 5 MHz 4 Mbit/s (MPEG-2) • "Terrestrial" distribution - producer - transmitter - consumer

• Transmission - modulation - antenna • Receiver - antenna

Konrad Froitzheim: Kommunikationsdienste 11 - de-modulator + channel filter - presentation

Konrad Froitzheim: Kommunikationsdienste 12 Cable distribution services • tree or bus structure

• Coax cable • active and passive taps - directional?

Konrad Froitzheim: Kommunikationsdienste 13 • 50-100 Programms, 5 MHz each • Pay-TV - channel oriented: regular, premium, pay-per-view - encryption and decoder - patch-panel Hausverteiler Smith Miller Philips Porter Handa Yung

BasisAbo Ereignis Showtime Playboy HBO Sport

Konrad Froitzheim: Kommunikationsdienste 14 Satellite distribution • Producer - base station - Satellite - receiver - TV, radio - WWW

• frequency range 10-12 GHz

Konrad Froitzheim: Kommunikationsdienste 15 • Receiver - parabolic antenna: 40 - 120 cm

• Fixed position relative to earth - geostationary orbit at 36.000 km - e.g. ASTRA 19,2˚ Easr - delay: 2 * 36.000 km / 300.000 km/sec = 0,240 sec - co-location of multiple satellites • Pay-TV

Konrad Froitzheim: Kommunikationsdienste 16 - encryption and decoder

Konrad Froitzheim: Kommunikationsdienste 17 6.2 Media on Demand • "individual" programs • Video on demand - hundreds of national events per day - thousands of regional events per day - produced programs - real-time • Movie on Demand - 65.000 feature films - thousands of shows with 10 - 500 episoden • => > 100.000 program components • Languages • Consumption constraints - arbitrary commencement - VCR functionality (play, FF, reverse, pause, …) - commercials

Konrad Froitzheim: Kommunikationsdienste 18 6.2.1 Video on Demand: transport • Throughput: # of programs * timeslots * 4 Mbit/s • Where is the problem? - capacity of broadband systems < 100 analogue video streams per system < 500 digital video streams per system - program storage - payment • ASTRA-capacity: 3500 channels • Individual access to the programming source - point-to-point - accumulate requests: multi-point • Increase distribution network capacity

Konrad Froitzheim: Kommunikationsdienste 19 • Switched communication system - e.g. ATM • Fiber optics network - fiber to the home?

Programme

- fiber to the curb

Programme

• Problem: subscriber line - telephone : 2 * 64 kbit/s - video-telephone : 384 kbit/s - TV channels : 2 * 4 MBit/s => uplink : 16 - 512 kbit/s

Konrad Froitzheim: Kommunikationsdienste 20 => downlink : 9 Mbit/s

Konrad Froitzheim: Kommunikationsdienste 21 • ISDN S2M • HDSL, ADSL, XDSL - voice grade telephone line - appartment - 1st multiplexer

TV

TV

• Line quality - 22 splices from telephone to central office? - 50 pairs per cable

Konrad Froitzheim: Kommunikationsdienste 22 - inductances and other magic

Konrad Froitzheim: Kommunikationsdienste 23 • Asynchronous digital subscriber line: ADSL - voice grade cable - available spectrum >> 3300 Hz - max. loop resistance 1500 Ω - 4500 m: 1544 kbit/s downstream, 16 kbit/s upstream - 3600 m: 6132 kbit/s - 2700 m: 8448 kbit/s downstream, 640 kbit/s upstream • Cable modem scenario Teilnehmer

Anschlußleitung TV

Anschlußleitung TV

Konrad Froitzheim: Kommunikationsdienste 24 • Cable-Modem - 4 kHz POTS - 17 Mbit/s downlink (yellow), 640 kbit/s - 2 MBit/s uplink (blue)

4 7 3 0 0 4 4 6 4 7 0 6 0 6 M H z • High performance modulation - higher symbol rate - Discrete Multitone: 255 * 4 kHz subchannels - Quadrature Amplitude Modulation (QAM) - downstream QAM with 64/256 constellation: 43 MBit/s - upstream QPSK 600 kbit/s - 10 MBit/s RF-Tuner Demodulator ADC

DSP RAM ENet XCeive

RF-Modulator Modulator DAC

Konrad Froitzheim: Kommunikationsdienste 25 - customer interface 10BaseT, 100BaseT

Konrad Froitzheim: Kommunikationsdienste 26 • Telephony as added service in a CATV-network • Shared medium - for several/many subscribers - downstream distributed with routers - multiple TV-channels available - sequentialization in the upstream channel: S-CDMA - 10% protocol overhead - encryption

Konrad Froitzheim: Kommunikationsdienste 27 • Distribution to patch-box or switch - for xDSL and cable modems - ATM - HFC: Hybrid Fiber Coax Network

TV,Internet telephone,ONT

- FTT{C,B,N,H}: Fiber to the {Curb, Building, Neighborhood, Home} - 500 - 3000 subscribers on one trunk line

Konrad Froitzheim: Kommunikationsdienste 28 Near Movie on Demand • Multiplex - course time discretization - collect requests - delay answer into the next time-slot - Multicast

Film C Film B Film A

Anforderungen AC CBAC BB C C CCAC BB • Store components in the receiver Film A

Anforderungen A A A

Konrad Froitzheim: Kommunikationsdienste 29 WebMovie [Merz, Froitzheim] • Videoclips - transmission duration = n * presentation duration - users view clip m ~ n times • hierarchical video compression - coarse time resolution - coarse spatial resolution - medium time resolution - fine spatial resolution - fine time resolution • Iterated movie transmission • Repeated presentation with increasing quality

Konrad Froitzheim: Kommunikationsdienste 30 Konrad Froitzheim: Kommunikationsdienste 31 • Underlying QoS - with or without error correction - guaranteed throughput? • Feedback channel Graphics Video Audio 2 Audio 1

Kompressor Kombination

QoS-Steuerung Dekompression • Iteration control compensates poor QoS - throughput controls layering - receiver-reports - integrate retranmission into layering scheme

Konrad Froitzheim: Kommunikationsdienste 32 6.2.2 Movie on Demand: Server • Movies - 1 GByte as MPEG-1 - 4 GByte as MPEG-2 - 65.000 movies => 260 TByte (MTBF!) • Consumers - little server (hotel): 10 - 250 user - medium server (district): 250 - 5.000 user - big server (small town): 5.000 - 30.000 user • Hierarchical storage scheme

Konrad Froitzheim: Kommunikationsdienste 33 Konrad Froitzheim: Kommunikationsdienste 34 • Tertiary storage - video-tapes, CD-ROM, DVD, DAT, juke box, … - Terabyte, slow positioning (seek time) - low transfer rate - cheap (1$ / GByte) - Einfachzugriff • Secondary storage - optical storage, … - medium transfer rate • Primary storage - RAID - 1-10 Terabyte, access in milliseconds - high Transferrate > 10 Mbyte/s - expensive ($100 / GByte) - multiple file access - "Proxy" - disk scheduling

Konrad Froitzheim: Kommunikationsdienste 35 6.2.3 Movie on Demand: Set-top-box • Network INTERFACE - ADSL - Cable Modem - optical Netzwerk - 10 BaseT to ext. cable modem DSP:Demodulation • MPEG-decompression - Huffman, DCT, FIFO - BitBlit, Halb-Pixel-Dither - YUV Decompress D A • RGB-DAC C • User interface RAM I - menu system Control - operated with infrared remote control R • DSP, PPC or IA • < 1000 DM, subsidized by subscription

Konrad Froitzheim: Kommunikationsdienste 36 Konrad Froitzheim: Kommunikationsdienste 37 6.3 Electronic Mail • Asynchronous, paketized communication • E-Mail: trasfer of electronic documents - mail and fax (text, graphics, photo) Ort, Datum Empfänger Betreff, Ab- Kopien sender + Adresse Text

• Multimedia-Mail - parcel or packet - text, graphics, photo, audio, video, …

Konrad Froitzheim: Kommunikationsdienste 38 • An abundance of standards: - X.400 (ITU), - SMTP (Simple Mail Transfer Protocol) - MIME (Multipurpose Internet Mail Extensions) - proprietary formats: PROFS, All-in-one, MAPI, VIM, … Lotus Notes • Formatted data - address, routing and other handling information - character set - text formatting - graphics - multimedia components - composition - encryption (PGP …)

Konrad Froitzheim: Kommunikationsdienste 39 6.3.1 Internet Mail • Envelope Ort, Datum Empfänger Betreff, - recipient address Ab- Kopien sender + - sender address Adresse Text - post mark • Content sheet - header - date - subject - text - signature etc. • RFC 822 Standard for the Format of ARPA Internet Text Messages - syntax - message = envelope + content - format for fields and content restriction • RFC 821 SMTP: Simple Mail Transfer Protocol - message transfer

Konrad Froitzheim: Kommunikationsdienste 40 • Modell: Store and Forward User User

mail elm spool popd POP Eudora SMTP

Sendmail Sendmail Sendmail

SMTP uux rmail • 'Mailer' to reate, write and manage mails • RFC 1939: POP Post Office Protocol - personal computers are not always on - backup etc. • List-Server - special receivers - [email protected] - sends copies to configured list of recipients

Konrad Froitzheim: Kommunikationsdienste 41 RFC 821 SMTP: Simple Mail Transfer Protocol • End-to-end connection e.g. with TCP • SMTP-Server accepts mail - for known users - forward • Simple example S: MAIL FROM: R: 250 OK

S: RCPT TO: R: 250 OK

S: RCPT TO: R: 550 No such user here

S: RCPT TO: R: 250 OK

S: DATA R: 354 Start mail input; end with . S: Hallo ins kalte Schwaben ... S: ...bei uns ist es schoen warm.

Konrad Froitzheim: Kommunikationsdienste 42 S: . R: 250 OK

Konrad Froitzheim: Kommunikationsdienste 43 RFC 822 Format of ARPA Internet Text Messages • Message syntax • Format and a bit of header semantics • Simple header Date: 26 Aug 76 1429 EDT From: [email protected] To: [email protected] • Regular header Date: 26 Aug 76 1430 EDT From: George Jones Sender: Secy@SHOST To: "Al Neuman"@Mad-Host, Sam.Irving@Other-Host Message-ID:

Konrad Froitzheim: Kommunikationsdienste 44 • Complex header Date : 27 Aug 76 0932 PDT From : Ken Davis Subject : Re: The Syntax in the RFC Sender : KSecy@Other-Host Reply-To : [email protected] To : George Jones , [email protected] cc : Important folk: Tom Softwood , "Sam Irving"@Other-Host;, Standard Distribution: /main/davis/people/standard@Other-Host, "standard.dist.3"@Tops-20-Host>; Comment : Sam is away on business. He asked me to handle his mail for him. He'll be able to provide a more accurate explanation when he returns next week. In-Reply-To: , George's message X-Special-action: This is a sample of user-defined field- names. There could also be a field-name "Special-action", but its name might later be preempted

Konrad Froitzheim: Kommunikationsdienste 45 Message-ID: <4231.629.XYzi-What@Other-Host>

Konrad Froitzheim: Kommunikationsdienste 46 • Sendmails insert path information Return-Path: Received: from hermes.informatik.uni-ulm.de by julia.informatik.uni-ulm.de (4.1/UniUlm-info-1.1r) id AA23213; Tue, 29 Oct 96 18:58:14 +0100 Received: from smtp-relay-2.Adobe.COM by hermes.informatik.uni-ulm.de (4.1/UniUlm-info-1.1r) id AA09748; Tue, 29 Oct 96 18:58:20 +0100 Received: by smtp-relay-2.Adobe.COM (8.7.5) with ESMTP id JAA27883; Tue, 29 Oct 1996 09:57:37 -0800 (PST) Received: by inner-relay-1.Adobe.COM (8.7.5) with ESMTP id JAA20209; Tue, 29 Oct 1996 09:56:52 -0800 (PST) Received: by mail-303.corp.Adobe.COM (8.7.5) with ESMTP id JAA29067; Tue, 29 Oct 1996 09:57:20 -0800 (PST) Received: by mondial (8.6.9) with SMTP id KAA01118; Tue, 29 Oct 1996 10:02:53 -0800 Message-Id: <199610291802.KAA01118@mondial> To: Konrad Froitzheim Subject: Re: Peter Schulthess? In-Reply-To: Your message of "Tue, 29 Oct 1996 15:12:45 +0100." Date: Tue, 29 Oct 1996 10:02:52 PST From: Ed McCreight • Restrictions - only ASCII-characters - no lines longer than 1000 characters - maximum message length

Konrad Froitzheim: Kommunikationsdienste 47 6.3.2 MIME - Multipurpose Internet Mail Extensions • Interent-Mails contain ASCII only • RFC 821 and RFC 822 specify addresses and transmission • RFC 1341 - multiple objects in one information entity - arbitrary line and text lenght - ISO 8859-X character sets - fonts - binary data - audio - video - application specific • Compatible with RFC 822 • Subset implementation allowed - minimal subset defined • New fields in the RFC 822 header

Konrad Froitzheim: Kommunikationsdienste 48 • body-part: header+body body body 4 body 1 body 4.1

body 2 body 4.2

body 3

• New field: Mime-version … Mime-Version: 1.0 … Date: Fri, 01 Nov 1996 12:05:56 +0100 To: [email protected]

Konrad Froitzheim: Kommunikationsdienste 49 • New field: Content-Type Content-Type := type "/" subtype [";" parameter] - examples image/jpeg image/GIF audio/x-wav video/quicktime video/mpeg - 7 defined Content-Types: application, audio, image, message, multipart, text, video - X-TypeName - registration of new Content-Types • Application - Application/Octet-Stream;;;; - Application/ODA - Application/PostScript

Konrad Froitzheim: Kommunikationsdienste 50 • Multipart - /Mixed: serial presentation - /Parallel: synchronous presentation - parts separated with 'boundaries': Parameter Boundary … Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="======_846871556==_" … Präambel: to be ignored ======_846871556== Content-type: text/plain; charset=us-ascii Text explizit als ascii gekennzeichnet, wie es sein sollte ======_846871556== Text mit implizitem Typ ======_846871556== Schluss, to be ignored

Konrad Froitzheim: Kommunikationsdienste 51 • New field: Content-Transfer-Encoding - RFC 821: 7 bit - mechanism to encode 8-bit - BASE64: 3 Byte => 4 7-bit Zeichen (24 =>28) similar to uuencode - Quoted-Printable: '=' as Escape-character M=9Fnchen after 75 character: = CR - 7-bit, 8-bit: short lines - binary: arbitrary line length Content-type: text/plain; charset=ISO-8859-1 Content-transfer-encoding: base64 • New fields: Content-ID and Content-Description [optional] • Message/External-Body - reference to real body Content-type: message/External-Body; access-type=ANON-FTP; name=ernst.informatik.uni-ulm.de/usr/local/www/bild.gif Content-type: image/gif

Konrad Froitzheim: Kommunikationsdienste 52 6.3.2 X.400 • ITU-standard

U s e r A g e n t L a y e r ( X . 4 2 0 ) A p p l i c a t i o n M e s s a g e T r a n s f e r L a y e r ( X . 4 1 1 ) L a y e r

R e l i a b l e T r a n s f e r L a y e r ( X . 4 1 0 )

P r e s e n t a t i o n L a y e r ( X . 4 0 9 )

S e s s i o n L a y e r ( X . 2 1 5 , X . 2 2 5 B A S )

T r a n s p o r t L a y e r ( X . 2 1 4 , X . 2 2 4 )

• Message = envelope + content • Message Transfer Layer: envelope • User Agent Layer describes letter (content)

Konrad Froitzheim: Kommunikationsdienste 53 • X.400 message - IM-UAPDU (Interpersonal Message User Agent Protocol Data Unit) - header and body - contains objects • X.400 format description: X.420 (ASN.1) • Object: Tag Length Contents typ e tag length content value Boolean 01 01 FF TRUE Integer 02 05 0100000000 4294967296 BitString 03 03 03AF38 00..01010111100111 IA5String 16 05 5045544552 'PETER' • Type and length as one byte - type: 0..30, 31 : escape - length: 0..127 or 128 + length of extended length field • Transfer syntax defines and encodes new types • Header: - sender, recipient, list of copy recipients,

Konrad Froitzheim: Kommunikationsdienste 54 - invalidation date, subject, etc. - fixed sequence

• Types in body part BodyPart ::= CHOICE { [0] IMPLICIT IA5Text, [1] IMPLICIT TLX, -- Telex [2] IMPLICIT Voice, [3] IMPLICIT G3Fax, -- T.4, Telefax G3 [4] IMPLICIT TIF0, -- Text Interch. Format 0, -- T.73, Telefax Gruppe 4 [5] IMPLICIT TTX, -- T.61, Teletex [6] IMPLICIT Videotex, -- T.100 BTX [7] Nationally Defined, [8] IMPLICIT Encrypted, [9] IMPLICIT ForwardedIM, -- IM-UAPDU [10] IMPLICIT SFD, -- Simple Formattable Dokument [11] IMPLICIT TIF1, -- Text Interchange Format 1, -- T.73, "Textfax" }

Konrad Froitzheim: Kommunikationsdienste 55 • Example - simple text only - simple formatting - predefined: presentation directives, layout directives

LogicalDescriptor for document DefaultValueList, ParagraphAttribu tes

05 00 06 01 01 00 02 Attributes: PresentationDirectives : Alignment justified

03 TextUnit In der obersten Zeile wurde ein logischer 'In der obersten Zeile wurde ein logischer Deskriptor Deskriptor für das Dokument angegeben, für das Dokument angegeben, der Blocksatz als Voreinstellung der Blocksatz als Voreinstellung für alle für alle Paragraphen vorsieht.' Paragraphen vorsieht. Dieser Paragraph hat keine besonderen Attribute. 05 01 LogicalDescriptor for paragraph Für diesen Paragraphen wurde linksbündig und ein linker Rand von 03 TextUnit fünf eingestellt. 'Dieser Paragraph hat keine besonderen Attribute.'

LogicalDescriptor for paragraph PresentationDirectives, Alignment: left 05 01 05 00 00 04 00 05 LayoutDirectives, leftIndentation: 5

03 TextUnit 'Für diesen Paragraphen wurde linksbündig und ein linker Rand von fünf eingestellt.'

Konrad Froitzheim: Kommunikationsdienste 56 • X.400 and multimedia? • X.400 1988 Body Part Types: - ia5text, teletex, encrypted, message - voice - g3-facsimile, g4-class1, mixed-mode - videotex - externally-defined (ASN.1 macro) • No structural information - between body-parts - no temporal or spatial relations - arrange multimedia elements?

Konrad Froitzheim: Kommunikationsdienste 57 • Distribution model: centralized - intermediate storage in the network

User

MHS UA

MTS User UA MTA

MTA MTA

User UA MTA UA User

• More functionality than SMTP • Network oriented service • No future

Konrad Froitzheim: Kommunikationsdienste 58 6.3.3 Voice-Mail • Answering machine - Record calls - voice messages • Voice storeare - tape - RAM - analog disk - PC with harddisk • Voice-Mailbox within PBX - permanent storage - multiple playback • Management and forwarding - edit, insert - send to other mailboxes - remote access • PC-applications based on "voice-modem"

Konrad Froitzheim: Kommunikationsdienste 59 • Difficult user interface

Konrad Froitzheim: Kommunikationsdienste 60 6.3.4 Multimedia Mail • Intermediate storage is part of most mail systems - X.400: network - Internet-Mail: mail hosts

UA

MTA

MTA

? UA ? ? • Multimedia implies large data sets • Mailserver and receiving system may not have enough storage

Konrad Froitzheim: Kommunikationsdienste 61 • Synchronous delivery during presentation - store and forward for reference list only - derefernce list during presentation

UA

MTA

MTA

UA

• realtime delivery vs. storage requirements • 'Global Store' • URL or DOR

Konrad Froitzheim: Kommunikationsdienste 62 Konrad Froitzheim: Kommunikationsdienste 63 • DOR - Distinguished Object References - ISO 10031-2; 1991

ROA ROA

DOR • Components of a DOR

Components content compare to AE-identifier Application entity in the storage Local reference app. dependant 2nd RL part Data object type ASN.1 external type MIME-type QoS Aktualitätsstufe expiration

Konrad Froitzheim: Kommunikationsdienste 64 6.4 WWW • Dr. Tim Berners-Lee CERN '89 - documentation and library for High-Energy Physics - no pictures - just textbased clients - HTML: ASCII-text + -tag - SGML DTD • NCSA Mosaic: April '93 - integrate several Internet services: FTP, gopher, WWW - graphical UI - Point-and-Click -> user acceptance • Netscape April '94 - NCSA development gang teams up with SGI founder - Mosaic - Netscape crossover: February '95 • Browser-war since 1997 - Internet Explorer vs. Netscape - Fatware: Communicator - Mozilla sourcecode

Konrad Froitzheim: Kommunikationsdienste 65 6.4.1 Foundations • Internet service just as eMail, FTP, gopher - protocol HTTP - eMail: SMTP <->WWW: HTTP 6.4.1.1 HTTP • Client-Server model • Request-Response mechanism: - Request: - type - attributes (header fields / request fields) - object - Response: - type - attributes (object metainformation) - object • HTTP 1.0 ASCII-based • Transportsystem independant - standard: TCP/IP, port 80

Konrad Froitzheim: Kommunikationsdienste 66 - other ports as part of the URL 6.4.1.2 URL: Uniform Resource Locator • Name space for objects in the WWW • Combination of several address spaces - protocol - hostname + serverport - pathname (UNIX-style) • Example: http://frodo.informatik.uni-ulm.de:80/test/Beispiel1.txt references file: /usr/local/www/htdocs/test/Beispiel1.txt on frodo • Relative URLs: /test/Beispiel0.html, Beispiel0.html, ../movies/

Konrad Froitzheim: Kommunikationsdienste 67 6.4.1.3 Methods and Objects • Request-Typ (method) - GET, PUT - POST, DELETE, ... • Response-type / code - OK 200 (2xx), Error 4xx, 5xx - No Response 204, Redirection 3xx, ... • Object-type - MIME types: text/plain, image/gif, … - attribute within the response-Header - not present in the request - example response: HTTP/1.0 200 Content-type: text/plain Expires: Sun 26 Mar 95 17:50:36 GMT

Dies ist ein Beispieltext

Konrad Froitzheim: Kommunikationsdienste 68 Konrad Froitzheim: Kommunikationsdienste 69 6.4.1.4 HTML, the language of the WWW • Hypertext Markup Language - Berners-Lee [1989]: link scientific and technical documents - SGML Document Type Definition - links are Hypertext-references - project Xanadu [Ted Nelson] - http://www.w3.org/TR/REC-html40/ • HTML: ASCII-Text + -Tag • Example: Ein HTML-Beispiel Dies ist ein Hypertext Dokument.

Mit einem Bild:
und einem Hyperlink

Dies ist ein Hypertext Dokument.

Mit einem Bild: Konrad Froitzheim: Kommunikationsdienste und einem Hyperlink 70 • Elements: - stypes - lists - formatting - links • Client-side extensions • Integrated viewers - HTML, GIF, JPEG - FTP-, gopher-directories - MPEG (a/v) ? - Streaming difficult • External programs - external viewers/handlers: MPEG, audio, Postscript, uudecode - presentation of arbitrary objects - mapping object - viewer

Konrad Froitzheim: Kommunikationsdienste 71 • Mapping based on MIME-types - text/html, image/gif, image/jpeg - video/quicktime, video/mpeg - application/rtf - configured resp. deduced in the server - Unix, Windows: file name extension (.htm(l), .gif) - MacOS: type + creator - guessing in the client: file name, content analysis • Imagemap - clickable pixel-graphics - client transmits mouse-position in HTTP Request - evaluation and response generation in the server • Embedded extensions - Applet-tag: Java-Applets - Figure-tag: generalized image-tag - Embed-tag: für PlugIns (native-Programme) - Object-tag: Verallgemeinerung

Konrad Froitzheim: Kommunikationsdienste 72 • Cascading Sytle Sheets • XML

Konrad Froitzheim: Kommunikationsdienste 73 6.4.2 Details 6.4.2.1 Server side extensions • CGI - Common Gateway Interface - extend name space -> program output FileHTTPHTTPCGIData system server requestresponse

- implemented as child process (Unix): stdout -> Server Applescript (MacOS): AEReply -> Server - CGI-Typen: standard: program output -> data part of the HTTP response

Konrad Froitzheim: Kommunikationsdienste 74 extended: full connection control: stdout=socket(TCP) • Example Imagemap: - Request: GET /cgi/imagemap/Beispiel5.map?85,82 - Server: % imagemap Beispiel5.map 85,82 - Beispiel5.map: rect /staff/Wolf.html 6,58 147,113 - client side extensions (forms, …) • Other CGI applications: - Gateway to: WAIS, Archie, data bases, finger - continous media: text, audio, video - in general: file system: stored data (files) CGI: generated data(data base query) DatenCGI-Prog.Klient 123 Quelle

Konrad Froitzheim: Kommunikationsdienste 75 6.4.2.2 Other services in the WWW • Service identified with service-spec in the URL - URL = service spec : service specifoc part http://frodo.informatik.uni-ulm.de:80/test/Beispiel1.txt - WWW-clients support many Internet services FTP (RFC 959): ftp://134.60.77.7/pub/Res2PICT.hqx SMTP (RFC 822): mailto:[email protected] Gopher (RFC 1436): gopher://cell-relay.indiana.edu/ NNTP (RFC 977): news:comp.infosystems.www.announce Local : file:/home/wolf/.login • Integrated Services - browser as universal frontend - local file system: Windows98 explorer

Konrad Froitzheim: Kommunikationsdienste 76 6.4.2.3 Optimizing the Web • Object Caching (URLs) - local: RAM, hard disk - proxie-Server: transparent cache between client and server multi-stage: faculty, university, ISP, continent ? - Expiration-Date • Hierarchical objects: 123

QuickTime™ and a Photo - JPEG decompressor are needed to see this picture 1/161/641/11/4

• HTTP-NG - durable transport connection - true sessions • Server response time - parallelism with threads instead of fork (new Apache) Konrad Froitzheim: Kommunikationsdienste 77 - high performance server cluster 6.4.2.4 Video / Animation • stored data: animated GIF • live video - source: videostream - picture retrieval compares to databased query - shared memory - addressed with stream id - access to latest frame/sample - discard old sample, after last reference is deleted Strom:BildCGI-Prog.Klient n-1nn-2 123 Strom:BildCGI-Prog.Klient n-1nn-2n+1 3412 RRVideo RRVideo

- all clients have different transfer rates

Konrad Froitzheim: Kommunikationsdienste 78 - multiple formats: GIF, JPEG, MPEG, …

Konrad Froitzheim: Kommunikationsdienste 79 • Component Encoding - Stream Construction (CESC) - Internet-QoS heterogeneous and dynamic shared memory stream TP estimator coder H.261 coder HTTP

stream TP estimator coder A-JPEG coder HTTP

stream TP estimator coder filter D MPEG coder HTTP

DCT LZW stream TP estimator coder Huff Quant D-GIF coder HTTP Wavelet stream TP estimator component coder encoder D-GIF coder HTTP

Konrad Froitzheim: Kommunikationsdienste 80 • Video transfer mechanisms: - sequence of HTTP-transaktions (Client-Pull) - sequence of HTTP-objects (Server-Push) - sequence of pictures (MJPEG-Objekt) - seqence of changes (GIF) - video stream (H.261, MPEG) • Client request format and method - Accept-attribute within request • Audio - external player - MPEG - WebAudio-plugin and -server (GSM and ADPCM) - WebAudio Java applet

Konrad Froitzheim: Kommunikationsdienste 81 6.4.2.5 HTTP applications • Web based remote control - command channel: HTTP-Request - Empty Response - feedback channel: state display as animated grafics / video FeedbackKommandoVisualisierunggesteuertesKHTTPommando Auswertungserver/System CGI

- Example: Internet model railroad - User-Interface in the hyperlink tree keine Auswahl

Gleis 1 Gleis 2 Gleis 3

Lok1 Lok 2 Lok 1 Lok 2 Lok 1 Lok 2

Go! Go! Go! Go! Go! Go!

Konrad Froitzheim: Kommunikationsdienste 82 • Redirection - Automatic redirection as HTTP-Response - application: - address change - security

DokumentausgabeBenutzereingabeKlientServerResponseRequestRequest (Kommando)(Umleitung)(Objekt)

Konrad Froitzheim: Kommunikationsdienste 83 6.5 JavaScript • Program fragments in HTML - improve HTML-pages - Netscape scripting language - window size und -decoration - menues, effects, … - example: http://uhu.telematik.tu-freiberg.de • Interpreter in the browser • Embedded in HTML - script-tag Test

Konrad Froitzheim: Kommunikationsdienste 84 • In other HTML-Tags JavaScript-Test

• Eventhandler - attribute in html-tags - describe execution conditions

Konrad Froitzheim: Kommunikationsdienste 85 - call of a JavaScript-function - onLoad, onClick, onMouseover, …

Konrad Froitzheim: Kommunikationsdienste 86 • Language - Notation ähnlich Java - interpreted • Statements - assignments zahl = 0; zahl++; zahl+=1; - conditional statements and loops if (Zahl<0) zahl = 0; while (idx<100) {…; idx++} for(i = 1; i <= 100; i++) {…} - function calls alert("Und hier ein kleiner Hinweis"); - statement blocks with {} if (Ergebnis > 100) { Ergebnis =0; Neustart(); }

Konrad Froitzheim: Kommunikationsdienste 87 • Variables - no decent type concept - declaration with 'var' - number or string - determined at first assignment var Antwort = 42; var Frage = "The Question for god …" - global or local in functions • Objects - self defined - predefined in the environment - window, document, … neuesFenster = new.window; - methods for the manipulation neuesFenster.open(); • Functions - statement blocks with variables - called from otehr functions and event handlers

Konrad Froitzheim: Kommunikationsdienste 88 6.6 Applets • Java - real programming lanuguage - type safe, object oriented, … - similar to C - native-compiler possible • Java and WWW - JavaScript - Java Applets - serverside Java

Konrad Froitzheim: Kommunikationsdienste 89 Toolbox Betriebs- system

Applet

Applet Klassen Applet

Applet

Bytecode-Interpreter

CPU • Java Virtual Machine - YAVA - virtual procesor - instructions: fmul, dmul, dload, ifeq, …

Konrad Froitzheim: Kommunikationsdienste 90 - threads - compilers typically generate bytecode

Konrad Froitzheim: Kommunikationsdienste 91 • Java Runtime Environment - virtual operating system with toolbox - classes with needed functions - strings, network, … - AWT: buttons, checkboxes, choices, lists, menus, text fields windows, panels, scroll panes grafics objects

Konrad Froitzheim: Kommunikationsdienste 92 • Security restrictions - limit file access - network connections only to applet source • API's - JNDI (Naming and Directory), JIDL (CORBA), JDBC (data base) - RMI, JTS (transactions) - JavaMail, JavaMedia (2D, 3D, sound, speech, telephony) - E-Commerce, JavaWallet - JINI (device information) - … • Applet transmission - 30% ByteCode, 70% names (ASCII-Strings) - class = TCP connection - JAR and compressed JAR (ZIP)

Konrad Froitzheim: Kommunikationsdienste 93 • Marc Andreessen - Java on the client is just not working - The work is to make the Java Runtime stable and fast - http://www.techweb.com/wire/story/TWB19980701S0001 • From a License agreement: The Java technology is not fault-tolerant and is not designed, manufactured or intended for use or resale as on-line control equipment in the operation of nuclear facilities, aircraft navigation or communication systems, or air traffic control machines in which the failure of the Java technology could lead directly to death, personal injury, or severe physical or environmental damage. • Java-Plug-In - JRE for Solaris, Windows and Macintosh - adheres to ISO-Standard (SUN) - more performance and less bugs

Konrad Froitzheim: Kommunikationsdienste 94 7. Kooperative Dienste • (Video-)Telefon - Punkt-zu-Punkt - Mehrpunkt

- Punkt-zu-Punkt- Konferenz - Mehrpunkt- Konferenz • Telepräsenz • Unterricht

Konrad Froitzheim: Kommunikationsdienste 95 • Arbeitsprozesse (CSCW)

Konrad Froitzheim: Kommunikationsdienste 96 7.1 Kommunikation Person-zu-Person 7.1.1 Telefondienst

PSTN

• 109 Teilnehmer? • Endgeräte standardisiert - Mikrofon - Lautsprecher - Bedienprozedur • Netzwerk heterogen

Konrad Froitzheim: Kommunikationsdienste 97 • Telefon - das Endgerät

Telefon Vermittlung

Gabelschalter

4:2 Strom- messung

4 5 3 6 2 7 1 8 9 0

Konrad Froitzheim: Kommunikationsdienste 98 • Wählziffern - DTMF: dual tone multiple frequency - Wahlschalter on-hook

off-hook aufgelegt 2 4 • Audio zur Netzwerk - User Signalisierung - Wählton, Frei, Besetzt, fast-busy - Ansage • Signalisierung

Konrad Froitzheim: Kommunikationsdienste 99 Endgerät Vermittlung off-hook Widerstand gering Setup Wählton Setup-Ack Drehscheibe Widerstand schwankt kein Ton Wählziffern

Freizeichen Alerting Warten Connect Sprechen kein Ton • Analoges Telefonsystem

Konrad Froitzheim: Kommunikationsdienste 100 P C M -4 8 0 E M D E M D P C M -7 6 8 0 D A D A

A D A D K V st K V st

P C M -3 0 P C M -3 0

D D A A E M D E M D

O V st O V st

a /b a /b a /b a /b

a /b a /b

Konrad Froitzheim: Kommunikationsdienste 101 • Digitales Telefonsystem

3 4 M b it/s - 6 4 k b it/s 6 4 k b it/s 5 6 5 M b it/s

D I V F D I V F

2 0 4 8 k b it/s 2 0 4 8 k b it/s

6 4 k b it/s 6 4 k b it/s

D I V O D I V O D D A A

I S D N a /b I S D N a /b

I S D N I S D N

Konrad Froitzheim: Kommunikationsdienste 102 • Leitungsvermittlung - garantierte Dienstegüte - Durchsatz - Verzögerung - Verzögerungsschwankung

Dienstegüte POTS ISDN ATM LAN IP 0 1 48 1500 9000 Größe der vermittelten Dateneinheit

Konrad Froitzheim: Kommunikationsdienste 103 • Zustandsmanagement des Netzwerkes • Hard-state im Telefonsystem - Problem Fehlerbehandlung - Wann soll eine Verbindung beendet werden? - eine Seite legt auf? Dauer des Auflegens? - Unterbrechung eines Leitungsstücks? - Umlenkung Software- Komplexität ATM

ISDN IP POTS LAN Hard-State Soft-Sate • Soft-State wie im Internet? - Router-Caches - Wiederreservierung bei RSVP

Konrad Froitzheim: Kommunikationsdienste 104 Konrad Froitzheim: Kommunikationsdienste 105 7.1.2 CIO-Phone • Einfache Videotelefonapplikation • Audio-Video Communcation Service - für VideoPhone und Multimedia-Ströme der Applikationen - UDP-basiert - Punkt-zu-Punkt - eventuell Datenreplikation • AVCS: Echtzeitorientiert - kein Delay absichtlich eingefügt - Pakete rigoros verwerfen: Ankunft zu spät Sendepuffer voll

Konrad Froitzheim: Kommunikationsdienste 106 . .

• Audio: 16 bit, 11.025 samples • M-JPEG - meist Hardware - Softwaredekompression • Problem der Single-Task-Codecs

AVCS

Kompressor Dekompressor Dekompressor

C-Cube

Konrad Froitzheim: Kommunikationsdienste 107 • AVCS Verbindungsmanagement

Control information AVCS Network AVCS PP Multimedia data ID= Register ExportStream ExportAnnounce (Attibute) (Attibutes) (Attibutes, ID, port#) Notify(ID, PutData(ID,data) ExportAnnounce) Network

PutData(ID,data) ImportStream(ID) PP AVCS ImportRequest (ID) PutData(ID,data) DataPacket ExportInfoReq uest(ID=0) PutData(ID,data) Register (Attibute) DataPacket ExportAnnounce( PutData(ID,data) Notify Attibutes, ID, (ID,ExportAnn port#) DataPacket ounce) PutData(ID,data) ImportStream DataPacket (ID) ImportRequest( PutData(ID,data) ID) DataPacket ImportEnd(ID) PutData(ID,data) ImportEnd Request(ID) DataPacket PutData(ID,data) UnRegister (Attibute) DataPacket ExportEnd(ID) ExportEnd(ID) ExportEnd(ID) Notify (ID, ExportEnd) Host 3 Host 1 Host 2

Konrad Froitzheim: Kommunikationsdienste 108 • PicturePhone = User Interface • AVCS - (komprimiert) und dekomprimiert - mischt

✎. - plant Wiedergabe

PP AVCS AVCS

MM-Share

PP Graphics Video Audio 2 Audio 1

Konrad Froitzheim: Kommunikationsdienste 109 • Verzögerungen bei der Datenmanipulation • Senden - PP öffnet Digitizer - PP bekommt Daten - PP übergibt Daten an AVCS - AVCS -> Ethernettreiber • Empfangen - Ethernettreiber empfängt Paket - wartet auf Paketende! - Ethernettreiber -> AVCS - AVCS dekomprimiert - AVCS mischt - AVCS -> Präsentations-Treiber • UDP-Modell auch im AVCS - Gleicher Sampling-Takt? - => (fast) keine Pufferung - Probleme mit differenzkomprimierten Daten

Konrad Froitzheim: Kommunikationsdienste 110 7.1.3 vat • Visual Audio Tool (Van Jacobsen, Steve McCanne) • Audioformate - PCM: 78 kbit/s = 64 kbit/s µ-law + Paketoverhead - DVI (ADPCM): 46 kbit/s - GSM: 17 kbit/s - LPC: 9 kbit/s • Internet als Übertragungsnetzwerk - Mehrpunktfähigkeit durch Multicast-IP (MBone) • UDP als Übertragungsprotokoll - unzuverlässig: Paketverlust 10 - 50% - keine Wiederholung - nur IP-Delay • Application Layer Framing - Zeitstempel - Delay abhängig vom Scenario - 'Playout Point'

Konrad Froitzheim: Kommunikationsdienste 111 • Pausenerkennung und -unterdrückung

Konrad Froitzheim: Kommunikationsdienste 112 7.1.4 vic • Video conferencing • Video-Formate - M-JPEG - Cell-B - nv - Intra-H.261 • Intra-H.261 - Conditional replenishment: nur Änderungen - H.261 Mechanismen, um Blöcke zu überspringen - keine Differenzkodierung (intercoded blocks)

Konrad Froitzheim: Kommunikationsdienste 113 Konrad Froitzheim: Kommunikationsdienste 114 7.1.5 Management der MBone-Tools • Multicast ≈ Rundfunk • Media-Tools sind eigenständige Programme Session- Manager ? Directory

Media- Tool Media- Tool Media- Tool

Konrad Froitzheim: Kommunikationsdienste 115 • sd: Session Directory • Ankündigung von Konferenzen - Multicast-IP-Nummern-Vergabe - Strombeschreibung: port, ID, scope, Medium, Kodierung - Kommentare • Programmzeitung als Paradigma • Import: Start des entsprechenden Tools

CERN-LHCC Vorlesung von K. Froitzheim IMS: Internet Town Hall Universitaet Ulm Open IMS: US Senate Abteilung Verteilte Systeme IETF: Session 3 @224.3.221.12, ttl 32 IETF: Session 4 Media: New IETF: Session 5 Audio@12345/4556 JENC7 Video@12346/4553 Lance&Steve quix@12347/1234 Edit MMA-Vorlesung Created by Oprah [email protected] Delete Siskel&Ebert UEFA-Cup: Bayern-1860 UEFA-Cup: Juve-Lonsee Quit USC-Seminar

Konrad Froitzheim: Kommunikationsdienste 116 • Neue Version: sdr

Konrad Froitzheim: Kommunikationsdienste 117 • mmcc: Multimedia Conference Control - Anrufparadigma - mmcc ruft mmcc • Verbindungsaufbau - Session-Namen, Security und Privacy eingeben - Partner aus Liste wählen - Medien wählen - Connect

[email protected] Media QoS Scope [email protected] Audio Low Local [email protected] Video Medium Region

Groupware High World

Name: Dies und das Add: Key: 123456789

Create Cancel

Konrad Froitzheim: Kommunikationsdienste 118 Konrad Froitzheim: Kommunikationsdienste 119 7.1.5 Kontrolle der Mehrpunkt-"Verbindung" im Mbone • RTCP: RTP Control Protocol - Session-Kontrolle - Datenverteilung messen • Skalierbarkeit der Session (Multicast) - Multicast von RTCP-Paketen - Sendezeit 'zufällig' wählen - Gesamtbandbreite limitieren • Sender Report (SR) - Zeitstempel - Gesamtzahl Pakete und Bytes gesendet • Receiver Report (RR) - Gesamtzahl Pakete empfangen - Gesamtzahl Pakete erwartet - Jitter - Letzter SR

Konrad Froitzheim: Kommunikationsdienste 120 • Source Description (SDES) - Source-ID - Canonical Endpoint Identifier: @ - Name - E-Mail Adresse - Ort und Beschreibung (Prosa) - eventuell wiederholt • Payload type mapping (FMT) - Source-ID - Typ 8 bit - Theoretischer Sample-Takt - IANA-ID (Internet Assigned Numbers Authority) • Endpaket: BYE - Quelle beendet Sendung

Konrad Froitzheim: Kommunikationsdienste 121 7.1.6 H.320 Videotelefonie • ITU-Standard • Zusammenfassung existierender Standards

H.261 Codec

G.7xx Codec Delay H.230 MUX Telematic Equipment ISDN

End-to-End Signalisierung H.242 Kontrolle User-Network Signalisierung (Q.931) • H.320 ist Rahmenspeczifikation - End-to-End Signalisierung (H.242) - Multiplexen von Audio und Video: H.221 - Multiplexen von Audio,Video und ITU-Daten: H.230

Konrad Froitzheim: Kommunikationsdienste 122 • Erfolgreich zur Verbindung von Konferenzstudios

Konrad Froitzheim: Kommunikationsdienste 123 7.2 Telepräsenz

Bitte klicken Sie

The quick brown fox jumps over the lazy dog

The quick brown fox Bitte klicken Sie ✍ jumps over the lazy dog

-

Konrad Froitzheim: Kommunikationsdienste 124 • 1 Teilnehmer - Telearbeit: Arbeit von 'zu Hause' - Fernwartung - Telnet etc. - Übertragen von Dokumenten - oder: Fernbedienung des Arbeitsplatzrechners - Screensharing: Timbuktu - Telefon und Videotelefon zur normalen Kontaktaufnahme • n Teilnehmer: Telekonferenz - Sitzungen ohne Reisen (Reisezeit >> Sitzungszeit) - z.B. shared Whiteboard - gemeinsame Dokumentenbearbeitung - automatisches Protokoll

Konrad Froitzheim: Kommunikationsdienste 125 • Dokumentenbearbeitung • Kooperationsunterstützung (Telefon + …) • Komponenten

Sitzungsmanagement Teilnehmer- Bildtelefon steuerung Tele-Zeiger

Rederecht

Applikation Applikation Applikation

Buch Artikel Bericht Grafik Film

Konrad Froitzheim: Kommunikationsdienste 126 • Kooperationsfähige Applikation (cooperation-aware) - Spezialsysteme für Konferenzräume - Verteilter Editor Konferenzsystem Benutzer Hardware homogen heterogen Betriebssystem homogen heterogen Applikation Groupware Einzelplatz

• Applikation nicht kooperationsfähig (cooperation-unaware) - Standardprogramme - Word, FrameMaker, Corel-Draw, Premiere, …

Applikation Terminal

Konrad Froitzheim: Kommunikationsdienste 127 • Kommunikation zwischen Anwendung und Terminal • Ausgabe - Grafikausgabe - Tastaturlampen, … - Video - Audio (Systembeep!) • Eingabe - Maus - Tastatur - Modifier-Tasten - Mikrofon - Kamera • Metaeingaben - vom Betriebssystem - Suspend/Resume - Fensterinhalt sichtbar / unsichtbar

Konrad Froitzheim: Kommunikationsdienste 128 7.2.1 Applikation-Sharing • Dienst: Vermittlung zwischen Programm und Terminal

Terminal 1 Applikation Applikation Sharing Terminal 2 Service Applikation Terminal 3

- Timbuktu [Epard; 1985]

• Multimedia-Application Sharing [Dermler, Froitzheim; 1992] - z.B. Präsentationen, Filmschnitt, Bildbearbeitung - Vermittlung zwischen Programm und Gerät

Konrad Froitzheim: Kommunikationsdienste 129 • Funktionen des Sharing - Dienstes (homogen)

Applikation

Transport Verteiler A System d a p Filter Archiv t e r Applikation Sharing Adapter

Terminal Terminal

Konrad Froitzheim: Kommunikationsdienste 130 7.2.2 Sharingkonzepte 7.2.2.1 Verteilung der Grafikinformation • Zentrale Architektur

Terminal 1

Sharing Applikation Terminal 2 System

Terminal 3

- Standardprotokolle - Besonders geeignet für X Window - XTV [Abdel-Wahab], SharedX [Altenhofen]

Konrad Froitzheim: Kommunikationsdienste 131 ✎.

• Aufgaben der X-Wedge • ResourceIds managen - eindeutig zwischen Client und Server - beliebig vergeben vom Server

XYZCreate (…) Applikation X-Wedge reply(81, …) reply(17, …) reply(755, …)

reply(123, …)

• Einheitliches Imaging-Modell - Farben - Fonts • Bit-Order und Byte-Order • Fensterüberlappung und Redraw konsolidieren Konrad Froitzheim: Kommunikationsdienste 132 • Verteilte Architektur

Pseudo Terminal 1 Applikation

Pseudo Applikation Pseudo Terminal 2 Terminal Applikation

Pseudo Terminal 3 Applikation Eigene Verbindung zwischen Verteilungs-Komponenten - 'eigene' Verbindung: Multicast, Verschlüsselung, Kompression - X-Wedge [Gutekunst, CIO-JVTOS; 1994]

Pseudo Terminal 1 Applikation

Pseudo Applikation Pseudo Terminal 2 Terminal Applikation

Pseudo Terminal 3 Applikation

Konrad Froitzheim: Kommunikationsdienste 133 7.2.2.2 Redirector • Abhören von Grafikoperationen • Events einfügen (Tastatur, Maus, Verwaltung) • Interface Applikation-Toolbox-Terminal

Application Application Application Grafics Audio Audio Toolbox Video X Video Terminal Terminal Terminal

• Betriebssystemkomponente simulieren - toolbox - transport system - device driver - memory - low-intercept vs. high-intercept - Datenmenge vs. Prozedurmenge - Semantik

Konrad Froitzheim: Kommunikationsdienste 134 7.2.2.3 Übersetzung • Grafikprimitive auf Sequenzen von Funktionen des Ziel-Grafiksystemes abbilden • Funktionale und semantische Lücken

X-Window QuickDraw • nicht-quadratische Stifte

Konrad Froitzheim: Kommunikationsdienste 135 • Text • Zeichensatzanpassung - Ä, Ö, Ü und ihre ASCII-Werte - Übersetzungstabelle - fehlende Zeichen (� ) • Fonteigenschaften - Zeichenhöhe - Zeichenbreite - Randausgleich

The quick brown fox The quick brown fox jumps over the lazy jumps over the lazy dog dog Th e q u ickb rownfo x ju m p s over th e la zy dog

Konrad Froitzheim: Kommunikationsdienste 136 7.2.2.4 Anordnung der Komponenten • Kombination mit Verteilung Vor der Verteilung

Terminal 1

Applikation Verteiler Terminal 2 Redirector Übersetzer Terminal 3

+ Komponentenwiederverwendung (QuiX + X-Wedge) – Gleichbehandlung der Terminale (Farbtiefe, Zeichensätze, …) – Struktur unflexibel

Konrad Froitzheim: Kommunikationsdienste 137 • Übersetzung nach der Verteilung

V Übersetzer 1 Terminal 1 e r t Applikation Redirector e Übersetzer 2 Terminal 2 i l e r Übersetzer 3 Terminal 3 + Flexible Verteilung der Funktionen + Konverter gut anpassbar an Terminaleigenschaften QuickDrawServer statt X-Server GDIServer statt X-Server + Objektorientierter Ansatz macht Verteiler einfach – Mehrfache Übersetzung

Konrad Froitzheim: Kommunikationsdienste 138 • QuiX-M [Froitzheim, Wolf; 1995]

V Übersetzer 1 Terminal 1 e r t Applikation Redirector e Übersetzer 2 Terminal 2 i l e r Übersetzer 3 Terminal 3 • Migration vom einfachen QuiX - Instanziierung des Übersetzers - Verteiler bietet nach oben Übersetzerschnittstelle - Seiteneingang zur Verteilungs-Steuerung • Performanceprobleme - X-Server - Übertragung, Pufferstrategie, etc.

Konrad Froitzheim: Kommunikationsdienste 139 - ab 1:4 Übersetzung

Konrad Froitzheim: Kommunikationsdienste 140 • Ausgelagerter Übersetzer: QuiQ [Maier, 1997] - Übersetzung von QuckDraw nach X - Zeichen von QuickDraw-Grafikkommandos mit der Xlib

V Übersetzer 1 Terminal 1 e r t Applikation Redirector e Übersetzer 2 Terminal 2 i l e r Übersetzer 3 Terminal 3 • Mehrpunktscenario - MBone, UDP - einfache Fehlerkorrektur (r=0,5) mit Bitpaar-Manipulation Q1 = P1; Q2 = P2; Q3 = P1+P2; (+ aus XOR)

Konrad Froitzheim: Kommunikationsdienste 141 Q4 = P1 • P2 (• aus + und *; * Tabelle)

Konrad Froitzheim: Kommunikationsdienste 142 • Übertragene QuickDraw-Kommandos - StdText(port, pnLoc, xfermode, scale, theText) - StdLine(port, pnLoc, xfermode,endPoint) - StdPoly, StdRect, StdRRect - StdArc, StdOval - StdRgn - StdBits (auch für CopyMask, PlotCIcon) • Weitere Kommandos für Metainformation - OpenWindow, CloseWindow - Manipulation des GC (Penshape, Patterns, Farben) - Clipping für Zeichenbefehle - Textfont und Textface • Late-Join - GC-Zustand

Konrad Froitzheim: Kommunikationsdienste 143 • Traffic-Shaping notwendig

NewWindow Redraw Bitmap Scroll • Anständige Programme - Adobe PhotoShop, Premiere, Tools und Utilities • Feinde - Menus, Dialogboxen, Popup-Menus, Scroller => Redirection an der Toolboxschnittstelle - DIY-Toolbox (Microsoft, Claris) - direkter Aufruf von OS-Routinen

Konrad Froitzheim: Kommunikationsdienste 144 - Framemakers 'Turbo-Text'

Konrad Froitzheim: Kommunikationsdienste 145 7.2.3 Joint Viewing and Teleoperation Service JVTOS

Session PicturePhone JVTOS Management

Multimedia Audio/Video TelePointer Applikation Communication Sharing Service

Tabellenkalkulation Textverarbeitung CAD

Multimedia Zeichnen

• RACE Projekt 2060, CIO - CET, ETHZ, Intersis, Siemens, Uni Stuttgart, TU Berlin, Uni Ulm

Konrad Froitzheim: Kommunikationsdienste 146 7.2.3.1 JVTOS-Eigenschaften • Heterogene Telekonferenz - SUN, SGI, Macintosh, MS-Windows-PC - Ethernet und ATM, TCP/IP und XTP - Grafikstandards: X Window QuickDraw Windows GDI - Multimedia-Toolbox: QuickTime, VfW, Parallax Extensions • Verteiltes Application-Sharing - Verteilung der Rechenlast wenig signifikant - Eigene Protokolle auf der Fernverbindung möglich => Multicast, Kompression und Verschlüsselung - Multimedia-Application-Sharing • Einsatz von QuiX-M in Berkom-MMC Konrad Froitzheim: Kommunikationsdienste 147 • Bildtelefon - Unzuverlässige Protokolle für Audio und Video (UDP) - Audio ausbaufähig - Video verbesserungsbedürftig optimierte JPEG-Dekompression [Froitzheim, Wolf; 1995] Hardwareabhängigkeit

• Telepointer-Implementierung erstaunlich schwierig - Einpassung in Grafiksystem - Fenster-Korrelation

• JVTOS ist implementiert - Piloteinsatz - Verminderung der Hardwareanforderungen - Wartung und Stabilität

Konrad Froitzheim: Kommunikationsdienste 148 • Interop/BRIS Sommer 1994 [Froitzheim, Weber] • Verteilter Vortrag

Projektor HAMBURG BERLIN Projektor BRIS ICC JVTOS JVTOS

ATM ATM

JVTOS JVTOS

Fore Fore

ATM ATM WAN WAN

ERICSSON SIEMENS ATM Pilot Telekom

Konrad Froitzheim: Kommunikationsdienste 149 7.2.3.2 Bewertung und weitere Arbeiten • Architektur von Telepräsenz-Diensten - zentral und verteilt - flexible Anordnung der Übersetzung - mit prototypischen Implementierungen validiert • Multimedia-Telepräsenzdienst JVTOS - in heterogener Umgebung - funktioniert gut - nützlich - Multimedia-Sharing möglich - QuickDraw -> X (QuiX) Übersetzer (fast) perfekt - Font-Server nötig

Konrad Froitzheim: Kommunikationsdienste 150 • Datenstromsteuerung - TCP empfindlich gegen Zellverlust im ATM - Bandbreite für isochrone Daten reservieren - Im Protokoll (XTP) oder in der Applikation (IP) • Verbesserung der Telepräsenz-Illusion - Drastische Verbesserung der Audioqualität nötig: Zuverlässigkeit, Frequenzgang, Echounterdrückung Räumliche Information (Surround Sound) - Pseudo-räumliche Anordnung des Videos • Natürliche Eingaberecht-Steuerung • Inhaltsbezogene Telepointer

Konrad Froitzheim: Kommunikationsdienste 151 7.2.4 T.120: Videokonferenzstandard der ITU

T.120 - Anwendung(en) Konferenzsteuerung Andere Applikationen

T.120 - Application Protocols T.128 AVC MPEG T.127 - Fxfer HTTP, HTML T.126 Still Img XWindow

T.124 Generic Conference Control

T.122 T.125 Multipoint Communication Service

T.120 - Infrastructure

T.123 Network Specific Transport Protcols

Konrad Froitzheim: Kommunikationsdienste 152 • T.124 - Abstraktion Konferenz - Create, Invite - Join, Leave - Application-Keys • Mehrpunkt-Kommunikation - Interface in T.122, Protokoll in T.125 - zuverlässiges Mehrpunktprotokoll - Kanal-Paradigma - globale Synchronisation zwischen Endgeräten • T.123: Trsnportprotokolle - PSTN, ISDN - CSPDN, PSPDN - IPX, TCP/IP - nach oben X.214/X.215 • T.126 Still Image Exchange and Annotation - Bitmaps

Konrad Froitzheim: Kommunikationsdienste 153 - einfache Grafik zur Annotation - Telepointer

Konrad Froitzheim: Kommunikationsdienste 154 • Workspace - 1 bis 256 Ebenen - obere Ebenen überdecken untere - Ebene entweder für Bitmap oder Annotation - virtual pointer plane

Konrad Froitzheim: Kommunikationsdienste 155 Konrad Froitzheim: Kommunikationsdienste 156 • Bitmapformate - Unkomprimiert - Fax G.3 (T.4), G.4 (T.6) - JGEP (T.81) - JBIG (T.82) • Annotation planes - permanent: Grafik wird zu Bitmap - editable: Objekte bleiben erhalten • Grafikbefehle - Punktsequenzen (Freiformlinien) - Polyline (offene Polygone) - Rechteck - Ellipse • Grafikparameter - Stift: Form, Farbe, Dicke, Stil - Bounding Rect, Z-Wert, Rotationswinkel

Konrad Froitzheim: Kommunikationsdienste 157 - sample-rate, Selektionszustand • Events: Tastatur, Zeigegerät

Konrad Froitzheim: Kommunikationsdienste 158 7.3 Synchrone Kooperation im WWW • kontinuierliche Medien - live: Audio, Video, Chat - Clips: Audio, Video, Animation • Dateiübertragungsparadigma - Übertragen, Speichern, Anzeigen - Helper-Applikationen - Streaming-Decoder für GIF - Plugins für Quicktime, Shockwave • WWW => http => TCP - Fehlerkorrektur - Vegas-Algorithmus • Bandbreite knapp - Kompression - Verstopfung • schlecht für Filme

Konrad Froitzheim: Kommunikationsdienste 159 - Übertragungszeit >> Abspielzeit

Konrad Froitzheim: Kommunikationsdienste 160 • Kompression und das WWW - MPEG, H.261 - MUSICAM, ADPCM, GSM, LPC • Kompression sehr rechenintensiv • Filtern im Netzwerk - Frames, Farbe, Auflösung verringern - Stream dekoderien, De-Huffman - Frames entfernen, ohne Abhängigkeiten zu zerstören - Huffman, Stream bauen • Beispiel - MPEG (Nick Yeadon et al in Lancaster) - IBBPBBPBBPBBPBB -> IPPPP -> I - 1210 K 551 K 201K - 100% 45% 17% - B-Frames 55% => Film schlecht komprimiert - 1I, 4P, 10B (B = 66%)

Konrad Froitzheim: Kommunikationsdienste 161 • Datenstromskalierung am Beispiel MPEG - Farbe entfernen: max. 20%

I B B B P B B B P - 1 Sekunde: 3*I, 4*P, 18*B, I:P:B = 40:30:30 - Wiederholrate 7 statt 25 reduziert Datenrate um 30% - Resultat: schlecht komprimierter Strom • Was ist eigentlich problematisch an MPEG - Vorwärtsbezüge - komplexe Bewegungsvektorsuche - räumliche Auflösung schwer zu reduzieren - nichttriviale Bewegungsvektoren sonderfall (Kameraschwenk) - Zoom, Drehung, Bewegung

Konrad Froitzheim: Kommunikationsdienste 162 • Mehrpunktszenarien im WWW und Internet - Fernsehen, Rundfunk, Konferenzen - Endgeräte - Netzwerke

Internet

Konrad Froitzheim: Kommunikationsdienste 163 • Internet ist durchsatz-heterogen

5Mbit/s

2Mbit/s 384 kbit/s

64 kbit/s 28,8 kbit/s

• Echtzeitpräsentation: Leitungen dürfen nicht 'verstopfen' => Teilnehmer brauchen individuelle Datenrate

Konrad Froitzheim: Kommunikationsdienste 164 • Filtern komprimierter Datenströme in Mehrpunktszenarien?

Filter 28,8 kbit/s 64 kbit/s 2 Mbit/s 5 Mbit/s Filter Filter Filter

64 kbit/s Filter

Filter 384 kbit/s

=> Skalierung an der Quelle

Konrad Froitzheim: Kommunikationsdienste 165 1. Idee: hierarchische Medienkodierung - mehrere Ströme mit unterschiedlichen Datenraten - jeder ausreichend gut komprimiert

I B B P B B I B B P B B I B B P B B I

I B B P B B I B B P

I B B P B B I • gemeinsame Kodierung - Wiederverwendung von Bewegungsvektoren - filmabhängiger Mehraufwand • Nur Rückwärtsvektoren - höhere Wiederverwendbarkeit - schlechtere Kompression • Aufwand 1 : 1,8 : 2,5 • nicht sehr flexibel • viele Stufen nötig

Konrad Froitzheim: Kommunikationsdienste 166 2. Idee: dynamisch Medienströme konstruieren • Bereitstellung der Kodierungsbasis - Rohinformation - transformationskodierte Daten - Änderungsmatrix mit Generationsinformation

• Vergleichsmethode - Filter: CCD-Rauschen - Kamera-Wackeln? - Wie goß muß die Differenz sein? - Wie groß muß ein Unterschiedsblock sein?

Konrad Froitzheim: Kommunikationsdienste 167 => Parameter abhängig vom Bild optimieren

Konrad Froitzheim: Kommunikationsdienste 168 • conditional Replenishment (Aktionsstrom) • Erzeugung der Updateinformation beim Bildabruf

t

• Bildt := Bildt-m + ∑i Blocki|x>t-m • Synergieeffekte zwischen Medienströmen? - DCT - Änderungsinformation • Einbettung in Standard-Videoströme - GIF - H.261 (McCanne: Intra-H.261) - MPEG nur mit trivialen Bewegungsvektoren - Problem Stützbilder (keyframes)

Konrad Froitzheim: Kommunikationsdienste 169 7.3.1 Webmedia • serverbasiert • 'Messung' der Bandbreite Server->Verbraucher 1. kleiner Schreibpuffer + TCP 2. Rückmeldungen 7.3.1.1 WebVideo • Medienverteiler – konstruiert komprimierte Medienströme – verschiedene Formate – Bandbreitenanpassung

Konrad Froitzheim: Kommunikationsdienste 170 M-JPEG

Pixel (RGB) D -GIF Differenzkarte DCT-Blöcke D -GIF Huffmanblöcke

MPEG

Konrad Froitzheim: Kommunikationsdienste 171 • Internet-Modellbahn als Beweis

Modem

n n+4 ISDN n+1 n+5 E1 Digitizer n+2 n+5 Stream n+3 n+7 LAN Server

• WebVideo - Mini-WWWServer - Windows 95, Linux, SUN-OS

Konrad Froitzheim: Kommunikationsdienste 172 7.3.1.2 WebAudio • GSM-Codec • Stärkere Kompression nutzlos - IP-Pakete 'kosten' - Länge nur wenig relevant - Zeit in einem Paket - 7 kbit/s = 0,9 kByte/s => 1 sec = 1 IP-Paket - Delay 100 msec => 90 Byte/Paket ~ 180 Byte/Paket

WebAudio- Netscape: Server Plugin; GSM- GSM- Kompressor De-Kompr. • Netscape-Plugin - Java zu langsam • WebAudio-Server - Mini-WWWserver

Konrad Froitzheim: Kommunikationsdienste 173 • Mixer im Empfänger für Mehrpunktszenarien

• Redundanz - Idee: Kompressionsverfahren mischen - Paket Pn = (An , Bn+1,n+2)

Konrad Froitzheim: Kommunikationsdienste 174 7.3.1.3 WebMovie • Idee: iterierte Übertragung • Mehrschicht-Übertragung - Auflösung (räumlich, zeitlich) aufteilen - Iterierte Übertragung - Empfänger setzt Film zusammen - Echtzeit-Präsentation in steigender Qualität 1. Übertragung 1. Präsentation 2. Übertragung 2. Präsentation • • • n. Übertragung n. Präsentation t

Konrad Froitzheim: Kommunikationsdienste 175 • Empfänger: kein gewöhnlicher Browser - Netscape-Plugin - meldet empfangene Pakete an WebMovie-Server - mit Zeitinformation

UDP

Timestamps, Acks/Nacks • Ungesicherter Übertragungsdienst - UDP - Empfängerberichte (Fehler, Bandbreite) - Integration der Wiederübertragung in die Iteration • Netscape-Plugin • WebAudio-Server - Mini-WWWserver

Konrad Froitzheim: Kommunikationsdienste 176 Konrad Froitzheim: Kommunikationsdienste 177 7.3.2 CoBrow • WWW ist ein chaotischer Informationsraum - Benutzer allein - Suchmaschinen und Linkpages

• Kontakte herstellen - andere Brower sichtbar machen - Treffpunkte eröffnen • Konferenzen eröffnen - Audio, Video, Application-Sharing, Chat, … - Co-Browsing • Neues UI für Konferenzdienste Konrad Froitzheim: Kommunikationsdienste 178 • Orthogonal zu AltaVista

Konrad Froitzheim: Kommunikationsdienste 179 • Treffen - auf derselben Seite - auf (inhaltlich) benachbarten Seiten - Zeitspanne limitiert • Vicinity • Metriken

Konrad Froitzheim: Kommunikationsdienste 180 Benutzer- Interessen Zeit Intervall

automatisch Zeit- punkt manuell ?

same page gewichtete Links different page different server Inhalts- different page analyse same server

space Inhalt

Konrad Froitzheim: Kommunikationsdienste 181 • URL-basierte Metriken - Schluß vom Aufenthaltsort des Benutzers auf Interessen des Benutzers - space: Linkdistanz < r - Inhaltsbezug: Gewichtete Links: ∑ wi < r*; Contentmatching: |Ci-Ck| < r' - Auswertung mit Karte des WWW

M=URL

M=L1

M=L2

• Benutzerbasierte Metriken - Benutzerinteressen im CoBrow-Server registrieren - manuell eingeben oder/und automatisch ermitteln (Browserfilter) - Profile 'matchen'

Konrad Froitzheim: Kommunikationsdienste 182 • Vicinity-Server - user-Position feststellen - Nachbarschaft berechnen - metrics: space, time, content - verteiltes System

Konrad Froitzheim: Kommunikationsdienste 183 VICI

Clients

VICI

Net- cbScout

scape vVis

cbUI

VICI

Net- cbScout

scape vVis

cbUI

VICI

Net- cbScout

scape Users vVis

cbUI

• cbScout - meldet betrachtete Seiten - hält Verbindung

Konrad Froitzheim: Kommunikationsdienste 184 • Meeting Place - Visualisierung der Nachbarschaft - Konferenz-Management • Primitive Variante - ASCII-Liste von Nachbarn - Button drücken: Konferenztool starten • WWW-Variante - Icon-Liste mit URLs - Anklicken bringt Comm-Page • VRML

Konrad Froitzheim: Kommunikationsdienste 185 • Individuell zusammengestellte Konferenz - Anklicken der CommPages - In Browser-Fenstern - Nicht unbedingt vollständig

Scottie Andreas ✥■▼◗◆❒❆✎❄❏❃

✴❈❅ ❑◆❉❃❋ ❂❒❏◗■ ❆❏❘

❊◆❍❐▲ ❏❖❅❒ ▼❈❅ ●❁❚❙

❄❏❇

Konrad

✍ Heiner

Konrad Froitzheim: Kommunikationsdienste 186 • WebMedia als Basis WWEGWnrac boSbdeerrver WWEGWnrac boSbdeerrver

CommPage

Heiner Wolf hat an der Universität Freibug Physik

Konrad Froitzheim: Kommunikationsdienste 187

Recommended publications