Applikasjoner. Disposisjon. overføringsproblematikk navnetjener world wide web epost. 4/27/2004 Slide 1

Like dokumenter
Applikasjoner. System arkitektur. Network applications: some jargon. Disposisjon. overføringsproblematikk navnetjener world wide web

Applikasjoner. Disposisjon. overføringsproblematikk navnetjener world wide web epost. 5/9/2006 Slide 1

Applikasjoner. System arkitektur. Network applications: some jargon. Client-server paradigm

Applikasjoner. Disposisjon. overføringsproblematikk navnetjener world wide web epost. 4/5/2011 Slide 1

Applikasjoner. Disposisjon. overføringsproblematikk navnetjener world wide web epost. 4/11/2007 Slide 1

Applikasjoner. System arkitektur. Network applications: some jargon. Client-server paradigm

Diverse praktisk: Merk at foilene også er pensum, og at det kan finnes info på foilene som ikke finnes i boka! Ukeoppgavene er også pensum.

Spredt spektrum. Trådløst Ethernet. Kapittel 2: Diverse praktisk:

Diverse praktisk: Merk at foilene også er pensum, og at det kan finnes info på foilene som ikke finnes i boka! Ukeoppgavene er også pensum.

Ennå litt mer detaljer: Flere detaljerte funksjoner i datanett

Internett Best-effort overføring Flere detaljerte funksjoner i datanett. Ennå litt mer detaljer: Formatet til IP-hodet

Flere detaljerte funksjoner i datanett

Trådløst Ethernet. Trådløs Ethernet. Kapittel 2: Diverse praktisk:

Flere detaljerte funksjoner i datanett

Ennå litt mer detaljer: Flere detaljerte funksjoner i datanett

Applikasjonslaget. Applikasjoner og applikasjonslagsprotokoller. Mål: Flere mål Spesifike protokoller: Programmeringsgrensesnitt

Ennå litt mer detaljer: Flere detaljerte funksjoner i datanett

Flere detaljerte funksjoner i datanett

Trådløs kommunikasjon 5/25/2007 INF3190 1

Opprinnelig IP-pakke inneholder 4480 Byte data. Dette er inklusiv IPheader. Max nyttelast på EthernetRammen er 1500 oktetter.

Hva består Internett av?

Tjenester i Internett. E-post, HTTP, FTP, Telnet

of color printers at university); helps in learning GIS.

Noen internet protokoller

IP Internet. Tjenestemodell. Sammensetning av nettverk. Protokollstack

Kap 3: Anvendelser av Internett

Exercise 1: Phase Splitter DC Operation

Universitetet i Oslo Institutt for informatikk. avmystifisert i INF102. Kvile

Guide for bruk av virtuelle møterom

SQL Server guide til e-lector

Information search for the research protocol in IIC/IID

HONSEL process monitoring

Heterogeneous Networks. Spredt spektrum. Trådløst Ethernet. Trådløs kommunikasjon

Software applications developed for the maritime service at the Danish Meteorological Institute

Forelesning Oppsummering

Elektronisk innlevering/electronic solution for submission:

LAVA. Om LAVA prosjektet UNINETT96

Invitation to Tender FSP FLO-IKT /2013/001 MILS OS

Obligatorisk oppgave nr 2 i datakommunikasjon. Høsten Innleveringsfrist: 04. november 2002 Gjennomgås: 7. november 2002

6105 Windows Server og datanett

From a table based Feature Catalogue to GML Application schemas

Flere Detaljerte Funksjoner i Datanett

SAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM

Velkommen til Pressis.

Windows Server 2008 Hyper-V, Windows Server 2008 Server Core Installation Notes

Compello Fakturagodkjenning Versjon 10 Software as a service. Tilgang til ny modulen Regnskapsføring

Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems

6105 Windows Server og datanett

Monitoring water sources.

Compello Fakturagodkjenning Versjon 10.5 As a Service. Tilgang til Compello Desktop - Regnskapsføring og Dokument import

DecisionMaker Frequent error codes (valid from version 7.x and up)

Web Services. Olav Lysne

Prosjektet Digital kontaktinformasjon og fullmakter for virksomheter Digital contact information and mandates for entities

Forelesning 1. Introduksjon til (eller repetisjon av) TCP/IP Datasikkerhet

Unit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3

Neste Generasjon Datanett

TTM4175 Hva er kommunikasjonsteknologi?

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP.

What is a protocol? Network protocols: Machine instead of people All communication activity in the Internet is controlled by protocols

Om Samba/fildeling. Hans Nordhaug Institutt for informatikk Høgskolen i Molde

Orders Ethernet connect

Improving Customer Relationships

Smart High-Side Power Switch BTS730

Introduction to DK- CERT Vulnerability Database

Utfordringer til mellomvare: Multimedia

TTM4175: Etisk hacking. Lab E5: Nettverkssniffing

Dynamic Programming Longest Common Subsequence. Class 27

TDT4110 IT Grunnkurs: Kommunikasjon og Nettverk. Læringsmål og pensum. Hva er et nettverk? Mål. Pensum

What is a protocol? What is the Internet? End systems. Oversikt: Internet: network of

INF3190 Obligatorisk oppgave: Eksternt administrasjonsverktøy med datastreaming

Innføring i Linux. Operativsystemer

API: Application programming interface, eller programmeringsgrensesnitt

Ny personvernlovgivning er på vei

GLOBALCOMSERVER HP 9100C DIGITAL SENDER GATEWAY ADMINISTRATOR S GUIDE 1998 AVM INFORMATIQUE (UPDATED: AUGUST 22, 2006)

SuperOffice hurtigstart guide

AvtaleGiro beskrivelse av feilmeldinger for oppdrag og transaksjoner kvitteringsliste L00202 levert i CSV fil

TEKNISKE PROBLEMSTILLINGER. Grunnkurs Våren 2007 Trond Haugen

Om Samba/fildeling. Hans Nordhaug Institutt for informatikk Høgskolen i Molde

Slope-Intercept Formula

Verifiable Secret-Sharing Schemes

P(ersonal) C(omputer) Gunnar Misund. Høgskolen i Østfold. Avdeling for Informasjonsteknologi

Start Here USB *CC * *CC * USB USB

EXAM TTM4128 SERVICE AND RESOURCE MANAGEMENT EKSAM I TTM4128 TJENESTE- OG RESSURSADMINISTRASJON

Installasjonen krever en Windows 2008 server innmeldt i domene.

Databases 1. Extended Relational Algebra

Ethernet Starter Kit II

NKKN typeforslag versjon Definisjon av grunntypene

Syntax/semantics - I INF 3110/ /29/2005 1

buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata

Reliable RT Spotify

Moving Objects. We need to move our objects in 3D space.

What is the Internet?

Hvordan føre reiseregninger i Unit4 Business World Forfatter:

Praktisk informasjon. Forelesning 1. Forelesningsform. Lærebok. Lærebok forts. Eksamen. Forelesninger. ØvingerØvinger

Datakommunikasjon høsten 2002

Feilmelding Årsak Løsning

Løsningsforslag til EKSAMEN

Residency at Arts Printing House for Performing Artists

Trigonometric Substitution

Repetisjon - Oversikt:

Transkript:

Applikasjoner Disposisjon overføringsproblematikk navnetjener world wide web epost 4/27/2004 Slide 1

Network applications: some jargon A process is a program that is running within a host. Within the same host, two processes communicate with interprocess communication defined by the OS. Processes running in different hosts communicate with an application-layer protocol A user agent is an interface between the user and the network application. Web:browser E-mail: mail reader streaming audio/video: media player 4/27/2004 Slide 2

System arkitektur Tjener Disk Komm. Prog. vare Navne tjener Disk Komm. Prog. vare Klient B r u k e r LAN LAN Internett 4/27/2004 Slide 3

Client-server paradigm Typical network app has two pieces: client and server Client: initiates contact with server ( speaks first ) typically requests service from server, for Web, client is implemented in browser; for e-mail, in mail reader Server: provides requested service to client e.g., Web server sends requested Web page, mail server delivers e- mail application transport network data link physical request reply application transport network data link physical 4/27/2004 Slide 4

Overføringsproblemer Data representeres på ulik måte i ulike maskiner på grunn av forskjell i: hardware Small-endians og Big-endians maskiner 1-komplement og 2-komplement logikk ordstørrelse 32-bit maskin til 64-bit maskin komm. operativsystem programmeringsspråk og kompilere forskjellig lokal representasjon EBCDIC (IBM) til ASCII eller IA5 (standard) 4/27/2004 Slide 5

Eksempel; hardwareforskjeller Integerverdien 34.677.374 Mest signif. Minst signif. Big-endians 00000010 00010001 00100010 01111110 Byte 4 Byte 1 Small-endians 01111110 00100010 00010001 00000010 Minst signifik. Mest signifik. 4/27/2004 Slide 6

Overføringssyntaks Applik. data Applik. data Presentasjons koding Presentasjons dekoding Pakke 1 Pakke 2 Pakke 3 Data må overføres i en overføringssyntaks som begge sider oppfatter på samme måte 4/27/2004 Slide 7

Abstrakt syntaks/overføringssyntaks Lokal repr. Applik.pros. Abstrakt syntaks kompilator Abstrakt kontekst Felles samtaleunivers Datastrukturer Operasjoner Abstrakt syntaks Lokal repr. Applik.pros. Koding og innpakking (marshalling) Overføringssyntaks Deoding og utpakking (marshalling) 4/27/2004 Slide 8

Marshalling/serialisering Serialisering Applikasjonens datastruktur Marshalling konvertering serialisering innpakking 4/27/2004 Slide 9

ASN.1 eksempler Integer > 65 535 32-bits maskin; representert i et 32-bits ord 16-bits maskin; representert i to 16-bits ord Hver datatype kodes ved overføring: Type Lengde Verdi Type lengde type lengde verdi type lengde verdi INT 4 B1 B2 B3 B4 Primitive typer: Bolean Integer Bit streng Oktett streng Null Objekt ID Objekt deskrip. Real Struktur typer 4/27/2004 Slide 10

Protokollstrukturen i UNIX Applikasjon Sockets TCP UDP User space Kernel IP Ethernet 4/27/2004 Slide 11

What transport service does an app need? Data loss some apps (e.g., audio) can tolerate some loss other apps (e.g., file transfer, telnet) require 100% reliable data transfer Bandwidth some apps (e.g., multimedia) require minimum amount of bandwidth to be effective other apps ( elastic apps ) make use of whatever bandwidth they get Timing some apps (e.g., Internet telephony, interactive games) require low delay to be effective 4/27/2004 Slide 12

Transport service requirements of common apps Application Data loss Bandwidth Time Sensitive file transfer e-mail Web documents real-time audio/video stored audio/video interactive games financial apps no loss no loss loss-tolerant loss-tolerant loss-tolerant loss-tolerant no loss elastic elastic elastic audio: 5Kb-1Mb video:10kb-5mb same as above few Kbps up elastic no no no yes, 100 s msec yes, few secs yes, 100 s msec yes and no 4/27/2004 Slide 13

Internet apps: their protocols and transport protocols Application e-mail remote terminal access Web file transfer streaming multimedia remote file server Internet telephony Application layer protocol smtp [RFC 821] telnet [RFC 854] http [RFC 2068] ftp [RFC 959] proprietary (e.g. RealNetworks) NSF proprietary (e.g., Vocaltec) Underlying transport protocol TCP TCP TCP TCP TCP or UDP TCP or UDP typically UDP 4/27/2004 Slide 14

Aksjoner på ulike protokollnivåer Bruker: connect odin.unik.no Gethostbyname (odin.unik.no 193.156.96.215) Applikasjon Getservicebyname (tcp 21) Socket (tcp; Port # > 1023) Connect (193.156.96.215; 21 Send(193.156.96.215; SDU) IP-addr MAC addr Send(MAC-addr; Data) TCP IP Ethernet TCP-PDU: (TCP-CON) IP-PDU: (Data) Ether-PDU: Data 4/27/2004 Slide 15

Navnetjenere 4/27/2004 Slide 16

Navnetjener Konvertere fra navn til adresser navn er brukervennlig adresser er nødvendig for fremsending av pakker husk; et endepunkt for en forbindelse er identifisert ved tripletten: IP-adresse; IP-SAP (Protocol); T-SAP (T-Port) Service (for eks. mail) vel-kjent port 4/27/2004 Slide 17

Organisering av navnetjenesten Organisert hierarkisk i domener, reflekteres i navnekonvensjonen for eks. baugi.ifi.uio.no hvert domene er ansvarlig for sitt navneområde fleksibelt og forenkler administrasjonen 4/27/2004 Slide 18

Navnehierarkiet og soner Generisk Land com edu mil gov org uk no se Rot-sone adm. NIC princeton berkeley arpa uio ifi fys baugi mjolnir skibladnir hver sone korresponderer med to eller flere navnetjenere en navnetjener kan implementere en eller flere soner 4/27/2004 Slide 19

Hierarki av navnetjenere Rot navnetjener no navnetjener uio navnetjener ifi navnetjener 4/27/2004 Slide 20

Navn-adresse transaksjoner Baugi.if.uio.no Klient 129.240.64.36 Lokal tjener 1 2 3 4 rot tjener no tjener uio tjener ifi tjener 4/27/2004 Slide 21

The Web: some jargon Web page: consists of objects addressed by a URL Most Web pages consist of: base HTML page, and several referenced objects. URL has two components: host name and path name: User agent for Web is called a browser: MS Internet Explorer Netscape Communicator Server for Web is called Web server: Apache (public domain) MS Internet Information Server www.someschool.edu/somedept/pic.gif 4/27/2004 Slide 22

The Web: the http protocol http: hypertext transfer protocol Web s application layer protocol client/server model client: browser that requests, receives, displays Web objects server: Web server sends objects in response to requests http1.0: RFC 1945 http1.1: RFC 2068 PC running Explorer Mac running Navigator http request http response http request http response Server running NCSA Web server Port 80 is default for http server. 4/27/2004 Slide 23

The http protocol: more http is stateless server maintains no information about past client requests 4/27/2004 Slide 24

http message format: request two types of http messages: request, response http request message: ASCII (human-readable format) request line (GET, POST, HEAD commands) header lines GET /somedir/page.html HTTP/1.0 User-agent: Mozilla/4.0 Accept: text/html, image/gif,image/jpeg Accept-language:fr Carriage return, line feed indicates end of message (extra carriage return, line feed) 4/27/2004 Slide 25

http request message: general format 4/27/2004 Slide 26

http message format: response status line (protocol status code status phrase) data, e.g., requested html file header lines HTTP/1.0 200 OK Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998... Content-Length: 6821 Content-Type: text/html data data data data data... 4/27/2004 Slide 27

Trying out http (client side) for yourself 1. Telnet to your favorite Web server: telnet www.eurecom.fr 80 Opens TCP connection to port 80 (default http server port) at www.eurecom.fr. Anything typed in sent to port 80 at www.eurecom.fr 2. Type in a GET http request: GET /~ross/index.html HTTP/1.0 By typing this in (hit carriage return twice), you send this minimal (but complete) GET request to http server 3. Look at response message sent by http server! 4/27/2004 Slide 28

User-server interaction: cookies server sends cookie to client in response mst Set-cookie: 1678453 client presents cookie in later requests cookie: 1678453 server matches presented-cookie with server-stored info authentication remembering user preferences, previous choices client usual http request msg usual http response + Set-cookie: # usual http request msg cookie: # usual http response msg usual http request msg cookie: # usual http response msg server cookiespectific action cookiespectific action 4/27/2004 Slide 29

Web Caches (proxy server) Goal: satisfy client request without involving origin server user sets browser: Web accesses via web cache client sends all http requests to web cache if object at web cache, web cache immediately returns object in http response else requests object from origin server, then returns http response to client client client http request http response http request http response Proxy server http request http response http request http response origin server origin server 4/27/2004 Slide 30

Assume: cache is close to client (e.g., in same network) smaller response time: cache closer to client decrease traffic to distant servers Why Web Caching? link out of institutional/local ISP network often bottleneck institutional network public Internet 1.5 Mbps access link 10 Mbps LAN origin servers institutional cache 4/27/2004 Slide 31

Electronic Mail Sending/Receiving Mail Addresses User Agent MIME Mail Transfer Agent Mail Access Protocols 4/27/2004 Slide 32

Format of an email 4/27/2004 Slide 33

Email address 4/27/2004 Slide 34

User agent 4/27/2004 Slide 35

Some examples: Note: Some examples of command-driven user agents are mail, pine, and elm. 4/27/2004 Slide 36

More examples: Note: Some examples of GUI-based user agents are Eudora, Outlook, and Netscape. 4/27/2004 Slide 37

MIME 4/27/2004 Slide 38

MIME header 4/27/2004 Slide 39

Data types and subtypes in MIME Type Text Multiport Message Image Video Audio Application Plain GIF MPEG Basic Subtype Mixed Parallel Digest Alternative RFC822 Partial Ext. Body JPEG PostScript 4/27/2004 Slide 40 Octet-Stream Unformatted text Body contains ordered parts of different data types Same as above, but no order Similar to mixed, but the default is message/rfc822 Parts are different versions of the same message Body is an encapsulated message Body is a fragment of a bigger message Body is a reference to another message Image is in JPEG Video is in GIF format Video is in MPEG format Single-channel encoding of voice at 8 KHz Adobe PostScript Description General binary data (8-bit bytes)

Content-transfer transfer encoding Category Description Type ASCII characters and short lines 7bit Non-ASCII characters and short lines 8bit Non-ASCII characters with unlimited-length lines Binary Base64 6-bit blocks of data are encoded into 8-bit ASCII characters Non-ASCII characters are encoded as an equal sign followed by an ASCII code 4/27/2004 Slide 41

MTA client and server 4/27/2004 Slide 42

Commands and responses 4/27/2004 Slide 43

Email delivery 4/27/2004 Slide 44

POP3 4/27/2004 Slide 45