Ποιά από τις πιο κάτω προτάσεις είναι σωστή; Ο Παγκόσμιος Ιστός ως υπολογιστικό σύστημα. Βασικά Συστατικά Στοιχεία. Centralized vs Distributed

Σχετικά έγγραφα
n includes support for HyperText and multimedia Μ. Δικαιάκος, EΠΛ425 n Centralized computing n Low cost: time-sharing, amortizing building cost

Βασικές Έννοιες Web Εφαρμογών

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών. (και το Διαδίκτυο)

6.2 Υπηρεσίες Διαδικτύου

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies)

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

Σχεδίαση και Ανάπτυξη Ιστότοπων

Network Address Translation (NAT)

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών.

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) INTERMEDIATE

Internet Τοπικό δίκτυο LAN Δίκτυο Ευρείας Περιοχής WAN Διαδίκτυο Πρόγραμμα Πλοήγησης φυλλομετρητής Πάροχοι Υπηρεσιών Internet URL HTML links

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών

Περί δικτύων. Δρ. Ματθαίος Πατρινόπουλος

Όχι, γιατί αν κάθε browser ζητά διαφορετικό αντικείμενο κάθε φορά τότε όχι μόνο δεν βελτιώνει αλλα χειροτερεύει τον χρόνο προσπέλασης

Τείχος Προστασίας Εφαρμογών Διαδικτύου

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Εργαστήριο του Μαθήματος: ΕΠΛ 001

Δυναμικές Ιστοσελίδες Προγραμματισμός στην πλευρά του client

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Προγραμματισμός Ιστοσελίδων (Web Design)

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

ΥΠΗΡΕΣΙΕΣ ΔΙΑΔΙΚΤΟΥ Explorer & Outlook 2013

Πλοήγηση www / Με τον Internet Explorer

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) INTERMEDIATE Υπηρεσίες Διαδικτύου ΕΚΔΟΣΗ 1.0. Διεύθυνση: Ασκληπιού 18 Τηλέφωνο:

Υπηρεσία φωνητικής υποστήριξης των ιστοτόπων της ΕΡΤ Α.Ε.

Περιεχόμενα. Πρόλογος... xiii

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Τεχνολογίες Παγκόσμιου Ιστού. 1η διάλεξη

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

ΟΓΗΓΙΕΣ ΧΡΗΣΗΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΜΗΤΡΩΟΥ ΑΠΟΒΛΗΤΩΝ. Draft version

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΙΣΤΟΤΟΠΩΝ

Δίκτυα. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

α. Προσωπικά δεδομένα που δύνανται να ζητηθούν από την σελίδα.

ΑΝΑΚΟΙΝΩΣΕΙΣ ΠΡΟΜΗΘΕΙΩΝ/ΕΡΓΑΣΙΩΝ ΜΕ ΛΗΨΗ ΠΡΟΣΦΟΡΏΝ 10/16

Επικοινωνία Client/Server

Δίκτυα Θεωρία

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

Μεταπτυχιακή Διατριβή

ΟΔΗΓΙΕΣ ΣΥΣΤΗΜΑΤΟΣ ΤΗΛΕΚΑΤΑΡΤΙΣΗΣ

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Βασίλειος Κοντογιάννης ΠΕ19

3.3 Πρωτόκολλα ανεύρεσης και απόδοσης διευθύνσεων, Address Resolution Protocol (ARP) και Dynamic Host Configuration Protocol (DHCP)

Τα είδη των ιστοσελίδων. Web Sites E-commerce Sites CMS & Blog Sites CMS Flash Facebook Layouts Tumblr Themes

Εφαρμογή Ηλεκτρονικής Διαχείρισης Μετεγγραφών

Vodafone Business Connect

ΠΡΟΔΙΑΓΡΑΦΕΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ ΕΥΡΩΠΑΪΚΟΥ ΚΕΝΤΡΟΥ ΚΑΤΑΝΑΛΩΤΗ ΕΛΛΑΔΑΣ

Κεφάλαιο 2. Υπολογιστές και Τεχνολογία Επικοινωνιών Παρελθόν - Παρόν - Μέλλον

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. Internet -

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I

Κεφάλαιο 13 Εφαρμογές Διαδικτύου

Φόρμα Επικοινωνίας ΠΡΟΟΙΜΙΟ

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ΔΙΚΤΥΑ Η/Υ ΙΙ. Γέφυρες

Πληροφορίες για το μάθημα

Εισαγωγή στην Πληροφορική

Ο ΗΓΟΣ ΕΠΙΜΟΡΦΩΤΗ. ηµοτικό ιαδικτυακό Ραδιόφωνο και Τηλεόραση. Y4 ηµιουργία διαδικτυακής ραδιοφωνικής εκποµπής µε τα εργαλεία

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. DICOM Επικοινωνία Γενικά

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. Internet -

Εγχειρίδιο χρήσης συστήματος ηλεκτρονικής αλληλογραφίας της Ελληνικής Ομοσπονδίας Μπριτζ

Υπηρεσίες ΠΣΔ Νέες Τεχνολογίες

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο

Πρωτόκολλα Διαδικτύου

Η βασική εργαλειοθήκη του διαδικτύου

Κεφάλαιο 9: Διαδίκτυο, Web 2.0 και Web X.0. Εφαρμογές Πληροφορικής Κεφ. 9 Καραμαούνας Πολύκαρπος 1

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head>

Μαλούτα Θεανώ Σελίδα 1

Εγχειρίδιο Χρήσης για Διαχειριστές. Πλατφόρμα Μεταφόρτωσης και Μετατροπής Βίντεο

, α/α: 1. Εξόδου» Παιδείας

Το πρωτόκολλο ΗΤΤΡ (HyperText Transfer Protocol)

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Τεχνολογίες και Εφαρμογές Διαδικτύου

FROM TESTOTA.REGISTRY

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ - Π.Μ.Σ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

Λογισµικό (Software SW) Λειτουργικά Συστήµατα και ίκτυα

Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP

* Enterprise Resource Planning ** Customer Relationship Management

Εισαγωγή στην Επιστήμη των Υπολογιστών

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Σύστημα διαχείρισης περιεχομένου (Content Management System)

ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ (INTERNETWORKING)

Transcript:

Ποιά από τις πιο κάτω προτάσεις είναι σωστή; Ο Παγκόσμιος Ιστός ως υπολογιστικό σύστημα Το μοντέλο δεδομένων των παραδοσιακών βάσεων δεδομένων και του παγκόσμιου ιστού είναι το σχεσιακό. Το μοντέλο δεδομένων των παραδοσιακών βάσεων δεδομένων είναι το αντικειμενοστραφές. Οι ιστιακές βάσεις δεδομένων υιοθετούν το γραφηματικό μοντέλο δεδομένων. Το μοντέλο δεδομένων του παγκόσμιου ιστού είναι κατευθυνόμενος γράφος. EΠΛ425 Βασικά Συστατικά Στοιχεία Αρχιτεκτονική Πελάτη/Εξυπηρετητή (Cliet/): οι «πελάτες» αλληλεπιδρούν με τους «εξυπηρετητές» (web s) Ενιαίο Σύστημα Διευθυνσιοδότησης Πόρων (Addressig system - Uiform Resource Locators) http://domai/directory/file.html Πρωτόκολλο αλληλεπίδρασης, διαστρωμάτωσης εφαρμογών (applicatio-level etwork protocol) HTTP, Hypertext Trasfer Protocol, is the laguage uderstood by browsers ad web s desiged to move quickly from documet to documet Γλώσσες Σήμανσης (Markup Laguage) every web uderstads ad every browser displays icludes support for HyperText ad multimedia 3 Ποιά είναι η αρχιτεκτονική συστήματος του Ιστού; Πώς λειτουργεί το μοντέλο πελάτη-εξυπηρετητή; Πελάτες-Εξυπηρετητές Ιστού Διαστρωματώσεις Παρουσίασης, Επιχειρησιακής Λογικής, Αποθήκευσης Με ποιό πρωτόκολλο αλληλεπιδρούν οι πελάτες και οι εξυπηρετητές του Ιστού; Ανατομία μιας αλληλεπίδρασης Ιστού Cetralized vs Distributed Cetralized computig Low cost: time-sharig, amortizig buildig cost Expert maagemet Distributed approach: Richer user iterface: higher badwidth available locally Greater autoomy Distributed Computig Models explaied 5

Louise ad Christie make a cake Traditioal Cliet ad Model Cake -- result of the service Recipe -- kow-how / code Site B: Christie Igrediets -- resource compoet / data Louise -- computatioal compoet A Christie -- computatioal compoet B Site A: Louise Wats to Eat cake Request of cake Louise s home -- Site A Christie s home -- Site B Cliet Read the recipe Bake the cake Deliver the cake A. Carzaiga, G.P. Picco ad G. Viga, Desigig Distributed Applicatios with Mobile Code Paradigms. Proceedigs of the 19th Iteratioal Coferece i Software Egieerig, 1997 X Widows System A. Carzaiga, G.P. Picco ad G. Viga, Desigig Distributed Applicatios with Mobile Code Paradigms. Proceedigs of the 19th Iteratioal Coferece i Software Egieerig, 1997 7 8 Remote Evaluatio Model: (REV) Code o Demad (COD) Site A: Louise Wats to Eat cake Recipe Site B: Christie Site A: Louise Wats to Eat cake Request for Recipe Site B: Christie Get the recipe Bake the cake Deliver the cake Recipe Uix: rsh commad PostScript priter 9 Termial gets a ew type of documet. Documet header may cotai a referece (URL address) to the code that is eeded to iterpret the documet. The the priciple will go to the referece ad dowload the ecessary code ad execute it afterwards. 10 Mobile Aget Model: (MA) Paradigm Recap Site A: Louise Site B: Christie Before After Louise Has: Recipe Louise moves to Site B alog with recipe ad igrediets Has: Igrediets Lack: Igrediets Lack: Do t care Cake 11 A ad B is already i executio 12

Choosig the Right Paradigm Cliet- Computig No paradigm is absolutely better tha others. The choice of paradigm must be performed o a case-bycase basis, takig ito accout issues such as the cost of etwork commuicatio, availability ad performace of resources, etc. 13 14 Αρχιτεκτονικη Πελάτη/Εξυπηρετητή Αρχιτεκτονικη Πελάτη/Εξυπηρετητή Cliet LAN/ WAN Cliet- Architecture Web Cliet (Browser) Iteret Site 3-tier Architecture Web Appl. DB Presetatio Tier Logic Tier Persistece Tier 15 16 Cliet- Browser Cliet Not widely popular for the masses The browser gradually became a platform 17 18

Browsers as platforms True cliet- computig with browsers Cliet 19 What happes behid the scee? Cliet HTML Εξυπηρετητής Ιστού/Διαθέτης [web ]: software that listes for web page requests: Apache,Microsoft Iteret Iformatio (IIS) (part of Widows) Εξυπηρετητής Εφαρμογών [applicatio ]: Software framework that provides a eviromet where applicatios ca ru: Apache, Glassfish, WebSphere, WebLogic Πλοηγός / Φυλλομετρητής Ιστού [web browser]: fetches/displays documets from web s: Mozilla Firefox, Microsoft Iteret Explorer (IE), Apple Safari, Google Chrome, Opera PHP XML HTTP Javascript SQL Data Ceter 21 Itraet Web Data Source Browser Web Iteret Data Source 22 Προγράµµα πελάτη: Εγκαθιδρύει συνδέσεις για να αποστείλει αιτήματα. Τυπικά συστήματα πελατών είναι: Data Source Φυλλομετρητές-πλοηγοί (browsers). Αράχνες-ιχνηλάτες (spiders, crawlers). Διεκπεραιωτές (agets). Εξυπηρετητής / διακοµιστής / διαθέτης (): Δέχεται συνδέσεις για να εξυπηρετήσει εισερχόμενες αιτήσεις. Πρέπει να μπορεί να αποκωδικοποιεί τα περιεχόμενα των αιτήσεων. Proxy PC Βασικά Συστατικά Λογισµικού ΠΠΠ Δομοστοιχεία Ιστού και Web 20 Εξυπηρετητές και Πελάτες Web Ενδιάµεσοι (proxies, itermediaries). Data Source Πύλες (gateway). Σήραγγες (tuel). 23 24

Πελάτες Ιστού Συστατικά Λογισμικού του Παγκόσμιου Ιστού Πληροφοριών: Συστήματα Πελάτη Η βασική αρχιτεκτονική του ΠΙ στηρίζεται στο μοντέλο πελάτη-εξυπηρετητή: Ο πελάτης διατυπώνει ένα αίτημα και το στέλνει στον εξυπηρετητή. Ο εξυπηρετητής διαβάζει και ερμηνεύει το αίτημα, εκτελεί κάποιες λειτουργίες και στέλνει μια απόκριση στον πελάτη. Ο πελάτης διαβάζει την απόκριση, την ερμηνεύει και εμφανίζει την απάντηση. Σε τυπικά συστήματα π/ε, τα προγράμματα πελάτη είναι σχετικά απλά. Η πολυπλοκότητα των συστημάτων αυτών ενσωματώνεται στους εξυπηρετητές. Στην περίπτωση του WWW, ωστόσο, τα συστήματα πελάτη είναι αρκετά πολύπλοκα (γιατί;). 26 Η εξέλιξη των πελατών Ιστού Βασικά στοιχεία ενός πλοηγού Αρχικά επρόκειτο για απλούς φυλλομετρητές, οι οποίοι υποβοηθούσαν τους χρήστες να πλοηγηθούν στο Διαδίκτυο. Σταδιακά μετατράπηκαν σε ενιαίο σημείο εισόδου και μοναδική διαπροσωπεία προς την πλειονότητα των λειτουργικοτήτων που προσφέρει ένας Η/Υ σε ένα χρήστη: Πλοήγηση σε τοπικό σύστημα αρχείων. Πρόσβαση σε ηλεκτρονικό ταχυδρομείο και ηλεκτρονικούς πίνακες ανακοινώσεων. Μεταφορά αρχείων. WWW Να παράσχει στον χρήστη: Την αίσθηση του συγκειμένου (otext) της πλοήγησής του που βρίσκεται ο χρήστης και τι πληροφορίες είναι προσβάσιμες από το σημείο στο οποίο βρίσκεται. Την ιδέα για το που αλλού μπορεί να μετακινηθεί και για το που βρισκόταν πιο πριν. Τη δυνατότητα να προσαρμόζει την πλοήγησή του και την εμφάνιση των πληροφοριακών πόρων που ανελκύει. Τη δυνατότητα αναζήτησης μέσα σε μια συλλογή από πληροφορίες. 27 28 Λειτουργικότητες πλοηγών Εγερση αιτημάτων HTTP Browser DNS Origi Origi Επιλογή Εισόδου στην διαπροσωπεία Κατασκευή αιτήµατος από: URL 1. DNS query Forward/Backward butto Μηχανισµό ιστορίας του φυλλοµετρητή 2. TCP Coectio Επιλογή υπερσυνδέσµου Αντίστοιχο URL στο αρχείο ΗΤΜL 3. HTTP Request 4. HTTP Respose 5. Optioal parallel coectios Σελιδοδείκτες Κλικ ή Retur σε κοµβίο Submit/Press Παράθυρο εισαγωγής URL Αρχείο σελιδοδεικτών Αντίστοιχο URL στο κοµβίο ή τη φόρµα Εισαγόµενο κείµενο Σύνοδος πλοηγού (browser sessio): μια σειρά από αιτήματα τα οποία εγείρει ένας χρήστης βασισμένα πιθανώς στις απαντήσεις που λαμβάνονται σε προηγούμενα αιτήματα. 29 Διάφορα µενού Επαναφόρτωση Εικόνες Επιλεγµένο πεδίο του µενού Τρέχoν URL Αυτόµατη δηµιουργία αιτήµατος µε το κλικ του χρήστη 30

Eναποθήκευση πλοηγού (Web cachig) Κρύπτη ή Λανθάνουσα Μνήμη (cache, κρυφή μνήμη): τοπικός χώρος αποθήκευσης μηνυμάτων, ο οποίος μπορεί να χρησιμοποιηθεί για να μειωθεί ο χρόνος απόκρισης στα αιτήματα των πελατών. Δύο ειδών εναποθηκεύσεις στους πλοηγούς: Στην κεντρική μνήμη Στο δίσκο Λειτουργία της εναποθηκεύσης: Έλεγχος εγκυρότητας κρύπτης (cache revalidatio) έλεγχος φρεσκάδας αποκρυβόμενων πληροφοριών. Συνέπεια κρύπτης (cosistecy): ισχυρή (strog) και ασθενής (weak). Για τον έλεγχο εγκυρότητας χρειαζόμαστε να διατηρούμε στην κρύπτη τον χρόνο τελευταίας ενημέρωσης της αποθηκευμένης πληροφορίας. Η σχετική χρονοσφραγίδα συχνά (αλλά όχι πάντοτε) δίνεται από τον πηγαίο εξυπηρετητή. Διαρρύθμιση Πλοηγών Δύο κατηγορίες ρυθμίσεων: Εξωτερικά χαρακτηριστικά σχετικά με τις γραμματοσειρές, τα χρώματα, την εμφάνιση του περιεχομένου, την εμφάνιση των εικόνων. Εσωτερικά σημασιολογικά χαρακτηριστικά, όπως η επιλογή της προτιμητέας γλώσσας ενός πληροφοριακού πόρου, ο έλεγχος της απόκρυψης των αποκρίσεων, η χρήση (ή όχι) ενδιάμεσου εξυπηρετητή κοκ. Πιό συγκεκριμένα, έχουμε ρυθμίσεις σχετιζόμενες με: Τη σύνδεση προς τον πηγαίο εξυπηρετητή (χρήση ενδιαμέσων). Το περιεχόμενο ή την επιλογή πληροφοριακών πόρων. Την απόκρυψη πληροφοριών (cachig). Τη διαχείριση των αποκρίσεων. 31 Τα «κουλουράκια» (cookies). 32 Διαχείριση Αποκρίσεων Ο πλοηγός μπορεί να χρησιμοποιεί υποβοηθητικά προγράμματα για να διαχειρίζεται αποκρίσεις οι οποίες περιέχουν περιεχόμενο που δεν είναι κείμενο ή εικόνα. Η επιλογή αυτών των προγραμμάτων είναι ρυθμιζόμενη. Π.χ. τι γίνεται όταν επιλέγουμε έναν πληροφοριακό πόρο που είναι postscript, pdf ή zip; Πως καταλαβαίνει ο φυλλομετρητής το μορφότυπο του περιεχομένου; Είτε με έλεγχο της επικεφαλίδας του μηνύματος απόκρισης, είτε από το επίθεμα του ονόματος του αντίστοιχου αρχείου. Πως χειρίζεται το εισερχόμενο αρχείο: μπορεί να έχει ρυθμιστεί ώστε να καλέσει το κατάλληλο εξωτερικό-υποβοηθητικό πρόγραμμα. Διαχείριση Αποκρίσεων με Πολυμέσα Αντί να ενσωματώσουμε τις δυνατότητες ενός αναγνώστη πολυμέσων (ήχου, βίντεο) στους φυλλομετρητές, επιτρέπουμε στον φυλλομετρητή να καλέσει την κατάλληλη εφαρμογή πολυμέσων. Έτσι, σε αντίστοιχο αίτημα ενός φυλλομετρητή, ο εξυπηρετητής επιστρέφει ένα δείκτη προς την πηγή εκπομπής του πολυμέσου, τον οποίο ο φυλλομετρητής περνά σαν παράμετρο στην κατάλληλη τοπική εφαρμογή λήψης και ερμηνείας πολυμεσικού περιεχομένου. Browser foo.ra Audio cliet 1. HTTP request for foo.ra 2. (Locatio, protocol) 3. Audio protocol request Origi Media 33 34 Εισαγωγή Ενδιάμεσων (Διαμεσολαβητών-proxies) Συστήματα Διαμεσολάβησης Η παρεμβολή ενδιάμεσου συστήματος στην επικοινωνία πελάτηεξυπηρετητή μπορεί να προσφέρει διάφορα πλεονεκτήματα, όπως: Μείωση της επικοινωνίας με τον εξυπηρετητή μέσω απόκρυψης περιεχομένου σε διαμεσολαβητή κοντά στον πελάτη. Μείωση της υστέρησης στην εξυπηρέτηση του πελάτη. Μείωση στον φόρτο αιτημάτων που δέχεται ο εξυπηρετητής. Ορισμός (HTTP/1.0 draft): Διαμεσολαβητής (Proxy) είναι ένα ενδιάμεσο πρόγραμμα (itermediary) το οποίο λειτουργεί και σαν πελάτης και σαν εξυπηρετητής, με στόχο την προώθηση αιτημάτων. Οι διαμεσολαβητές λειτουργούν συχνά σαν πύλες σε firewalls. Δέχονται αιτήματα από πελάτες και τα εξυπηρετούν είτε εσωτερικά είτε περνώντας τα (με πιθανή μετάφραση) σε άλλους εξυπηρετητές. Τα αιτήματα πρέπει να απευθύνονται προς τον διαμεσολαβητή, και όχι προς τον πηγαίο εξυπηρετητή (origi ). 36

Διαμεσολαβητές Άλλες κατηγορίες Ενδιάμεσων (Itermediaries) Πύλη (gateway): Eίναι πρόγραμμα το οποίο λειτουργεί επίσης σαν ενδιάμεσος για κάποιον εξυπηρετητή πρωτοκόλλου άλλου από το HTTP. Προωθώντας ένα μήνυμα, το πρόγραμμα πύλης μεταφράζει το αίτημα ΗΤΤP σε αίτημα στο πρωτόκολλο του εξυπηρετητή και αντιστρόφως. Ο πελάτης απευθύνει το αίτημά του στην πύλη, χωρίς να γνωρίζει την ύπαρξη, τη διεύθυνση και τη λειτουργία του πηγαίου εξυπηρετητή. Δηλαδή, για το σύστημα του πελάτη, η πύλη εμφανίζεται ως πηγαίος εξυπηρετητής. Σήραγγα (tuel): Ενδιάμεσο πρόγραμμα που λειτουργεί σαν «τυφλός» διακομιστής δυαδικών ψηφίων ανάμεσα σε δύο συνδέσεις. Δεν σαρώνει ούτε διερμηνεύει τα περιεχόμενα HTTP μηνυμάτων. Οι σήραγγες δεν απομνημονεύουν (cache) πληροφορία. 37 38 Διαμεσολαβητές και Σήραγγες Ταξινόμηση Διαμεσολαβητών Cliet Cliet 1. Request to Proxy 4. Respod to Cliet 1. Request to 2. Request to 4. Respose to Cliet 2. Request to Proxy Origi Tuel Origi 3. Respose to Proxy 3. Respose to Cliet Δύο βασικοί άξονες: Απομνημόνευση cachig Διαφάνεια: Διαφανείς ενδιάμεσοι (trasparet proxies): δεν επεμβαίνουν στα αιτήματα ή τις απαντήσεις, παρά μόνο κατά τρόπο επουσιώδη. Αδιαφανείς ενδιάμεσοι (o-trasparet proxies): μπορούν να επεμβαίνουν στα αιτήματα και τις απαντήσεις. Π.χ. Διαμεσολαβητές ανωνυμίας aoymizer proxies Διαμεσολαβητές φιλτραρίσματος filterig proxies Διαμεσολαβητές μετατροπείς trascodig proxies 39 40 Διαμεσολαβητές HTTP URL Browser DNS 1. DNS query 4. DNS query 2. TCP Coectio 3. HTTP Request 4. HTTP Respose Proxy 5. TCP Coectio 6. HTTP Request 6. HTTP Respose Origi Άλλα είδη Διαμεσολαβητών Reverse proxies ανάστροφοι διαμεσολαβητές: τοποθετούνται πιό κοντά στους πηγαίους εξυπηρετητές. Λειτουργούν ως πηγαίοι εξυπηρετητές για τους πελάτες. Μείωση φορτίου στον πηγαίο εξυπηρετητή. Απόκρυψη του πηγαίου εξυπηρετητή από τους πελάτες (για λόγους ασφάλειας). Εξισορρόπηση φορτίου ανάμεσα σε πολλαπλούς πηγαίους εξυπηρετητές. Iterceptio proxies διαμεσολαβητές παρεμβολής Παρεμβάλλονται στην επικοινωνία πελάτη με το Διαδίκτυο, εντοπίζοντας τα μηνύματα του ΗΤΤP και είτε προωθούν αιτήματα και απαντήσεις είτε τα εξυπηρετούν τοπικά. 41 42

Άλλα είδη Διαμεσολαβητών Εξυπηρετητές ΠΠΠ ή Πηγαίοι Εξυπηρετητές (Origi s ή Web s) 43 Ιστιακός Τόπος Συλλογή ιστοσελίδων, οι οποίες αντιστοιχούν σε κάποιο κοινό όνομα κόμβου (Hostame). Είδη ιστιακών τόπων: πανεπιστήμια, busiess-to-cosumer, corporate itraet, busiess-to-busiess, special evet, portal, search, gateway to other services. Portal: ιστιακός τόπος που προσπαθεί να δημιουργήσει και να διατηρήσει μακροχρόνιες σχέσεις με μεγάλο αριθμό χρηστών προσφέροντας ένα κεντρικό τόπο για ανεύρεση πληροφοριών. Εξυπηρετητές Ιστού (Web s) Προγράμματα που χειρίζονται αιτήματα HTTP για συγκεκριμένους πόρους. Ο εξυπηρετητής «τρέχει» πάνω σε ένα υπολογιστικό σύστημα το οποίο διαθέτει διασύνδεση με το διαδίκτυο. Το υ/σ αποτελείται από: Έναν ή περισσότερους επεξεργαστές. Κεντρική μνήμη. Σκληρούς δίσκους για αποθήκευση περιεχομένου και κώδικα. Ο εξυπηρετητής αλληλεπιδρά με τους επεξεργαστές, την μνήμη, το δίσκο και το δίκτυο μέσω του λειτουργικού συστήματος. 45 46 Λειτουργικότητα Εξυπηρετητών Ιστού Εξυπηρετητές Ιστού Βασικές λειτουργίες Εξυπηρετητή ΠΠΠ: Παραλαβή αιτημάτων πελατών Επικύρωση αιτημάτων και έλεγχος ασφάλειας. Αναζήτηση και συγκέντρωση των πληροφοριών που θα επιστραφούν ως απάντηση στην αίτηση του πελάτη (δεδομένα επιστροφής). Αποστολή των δεδομένων επιστροφής στον πελάτη. Άλλες λειτουργίες: Εκτέλεση προγραμμάτων για τη δυναμική δημιουργία πληροφοριών. Λειτουργία Εξ/ΠΠΠ σαν «πύλη πρόσβασης» (gateway) σε προγράμματα και πόρους (π.χ. Βάσεις Δεδομένων). Ο Εξ/Ιστού δεν παίζει κανένα ρόλο στο πως θα εμφανισθεί στο σύστημα του πελάτη η πληροφορία που αποστέλλεται. Λογισμικό Εξ/Ιστού: Apache, lightppd κλπ. 47 48

Λειτουργικότητα Εξυπηρετητών Ιστού Ο Εξ/Ιστού είναι ένα πρόγραμμα που «τρέχει» συνεχώς στο παρασκήνιο (daemo) αναμένοντας εισερχόμενα από το Διαδίκτυο αιτήματα πελατών. Ο Εξ/Ιστού «αφουγκράζεται» κάποια συγκεκριμένη θύρα (port) της διαδικτυακής σύνδεσης της πλατφόρμας στην οποία είναι εγκατεστημένος. Ο πελάτης στέλνει το αίτημά του στην συγκεκριμένη πόρτα της πλατφόρμας αυτής και έτσι εγκαθίσταται η δικτυακή σύνδεση μέσω της οποία θα γίνει η επικοινωνία. Το λογισμικό των Εξ/Ιστού του ΠΠΠ έχει σχεδιασθεί ώστε να γράφει και να διαβάζει στην συγκεκριμένη θύρα. Δεν χρειάζεται να ασχολείται με την μετάδοση των πληροφοριών πάνω στο δίκτυο. Λειτουργικότητα Εξυπηρετητών Ιστού Τι δεν γνωρίζει ο Εξ/Ιστού; Την ύπαρξη συνδέσμων. Για τον Εξ/Ιστού οι σύνδεσμοι είναι τμήματα του εγγράφου που τους εμπεριέχει. Την σημασιολογία των περιεχομένων των αρχείων Υ/Κ, τα οποία παρέχει στους πελάτες. Την ύπαρξη «ενσωματωμένων» εικόνων κλπ. Την ύπαρξη συνδέσμων προς τα αρχεία Υ/Κ που διατηρεί. Την ορθότητα των δηλώσεων MIME σχετικά με τα αρχεία που διακινεί. Την ύπαρξη άλλων Εξ/Ιστού (εκτός αν πρόκειται για Εξ διαμεσολάβησης). 49 50 Εξυπηρέτηση αιτήματος πελάτη 1. Ανάγνωση και σάρωση του αιτήματος HTTP. 2. Μετάφραση του αιτούμενου URL σε όνομα αρχείου. 3. Ελεγχος εξουσιοδότησης. 4. Δημιουργία και αποστολή της απόκρισης. Παρατηρήσεις: Η διαδικασία εξυπηρέτησης αιτημάτων ΗΤΤP συνοδεύεται συνήθως από την ενημέρωση αρχείων απογραφής (logs). Η απόκριση ενός εξυπηρετητή δεν περιέχει πάντοτε περιεχόμενο. 52 Έλεγχος Πρόσβασης - Ταυτοποίηση Autheticatio (ταυτοποίηση): αναγνώριση του χρήστη από τον οποίο προέρχεται ένα αίτημα. Ταυτοποίηση σε συστήματα πελάτη-εξυπηρετητή: χρήση κωδικού-συνθηματικού (ame ad password). Ταυτοποίηση στον Ιστό: Ανυπαρξία έννοιας συνόδου (sessio) ανάγκη ταυτοποίησης κάθε αιτήματος χωριστά. Λύση: O εξυπηρετητής ζητάει από τον πελάτη να περικλείει κωδικόσυνθηματικό στις επικεφαλλίδες των αιτημάτων ΗΤΤP. Ο χρήστης εισαγάγει κωδικό-συνθηματικό και αυτά περικλείονται αυτόματα από το σύστημα πελάτη σε επόμενα αιτήματα που απευθύνονται προς τον εξυπηρετητή. Έλεγχος Πρόσβασης - Εξουσιοδότηση Αuthorizatio (εξουσιοδότηση): προσδιορισμός των δικαιωμάτων πρόσβασης χρηστών σε πόρους. Για τον έλεγχο πρόσβασης χρηστών σε πόρους, υπάρχει η ανάγκη υλοποίησης μιας πολιτικής πρόσβασης. Η πολιτική πρόσβασης συνήθως εκφράζεται σαν μια λίστα ελέγχου πρόσβασης προς συγκεκριμένο πόρο (access cotrol list), η οποία περιγράφει τα δικαιώματα διαφόρων χρηστών πάνω στον πόρο. Ο έλεγχος εξουσιοδότησης συνεπάγεται υψηλό φόρτο σε έναν εξυπηρετητή ιστού. 53 54

Δημιουργία και χρήση κουλουριών Τα κουλουράκια δημιουργούνται, χρησιμοποιούνται και αλλάζουν από σκριπτ, τα οποία καλούνται για τη δημιουργία δυναμικών απαντήσεων. Από την σκοπιά του εξυπηρετητή, το κουλουράκι είναι μια αυθαίρετη συμβολοσειρά χαρακτήρων. Από τη σκοπιά του σκριπτ, το κουλουράκι συνοδεύεται από ένα συγκεκριμένο νόημα. Αν ένα αίτημα δεν περιλαμβάνει κουλουράκι, το σκριπτ δημιουργεί νέο κουλουράκι και το ενσωματώνει στην επικεφαλίδα της απάντησης: Set-Cookie: Customer= user17 ; Versio= 1 ; Path= /book Επόμενα αιτήματα από τον ίδιο χρήστη συμπεριλαμβάνουν το κουλουράκι: Cookie: Customer= user17 ; Versio= 1 ; Path= /book Set-Cookie: Order= Chomsky_Bio ; Versio= 1 ; Path= book Cookie: Customer= user17 ; Versio= 1 ; Path= /book ; Order= Chomsky_Bio ; Versio= 1 ; Path= book Δημιουργία και χρήση κουλουριών Πως μπορούμε να αποφύγουμε τη δημιουργία κουλουριών αυθαίρετα μεγάλου μεγέθους; Με χρήση κουλουριού-κλειδιού σε κάποια βάση δεδομένων πίσω από τον εξυπηρετητή. Πως μπορούμε να αποτρέψουμε χρήστες από το να δημιουργούν οι ίδιοι κουλούρια για να υποκλέψουν πληροφορίες άλλων χρηστών; Περικλείοντας στα κουλούρια κωδικοποιημένη πληροφορία, η οποία δυσχεραίνει την κατασκευή έγκυρων κουλουριών από τους χρήστες. Την ανάθεση σε κάθε κουλούρι ενός χρόνου λήξης μετά την λήξη, ο φυλλομετρητής υποχρεούται να ζητήσει νέο κουλούρι από τον εξυπηρετητή. 55 56 Τεχνικές Βελτιστοποίησης Η επίδοση ενός εξυπηρετητή μπορεί να βελτιωθεί με την χρήση πληροφοριών που δημιουργούνται κατά την εξυπηρέτηση ενός αιτήματος, σε επόμενα αιτήματα: Απομνημόνευση στατικού περιεχομένου στην κεντρική μνήμη του εξυπηρετητή (-side cachig). Απομνημόνευση δυναμικού περιεχομένου στην κεντρική μνήμη. Κοινοχρησία μεταδεδομένων: Μετάφραση URL σε όνομα αρχείου. Απομνημόνευση πληροφοριών ελέγχου για έναν πόρο. Απομνημόνευση επικεφαλίδων HTTP. Επαναχρησιμοποίηση χρονοσφραγίδας. Επαναχρησιμοποίηση ονόματος πελάτη (cliet hostame). Αρχιτεκτονικά Μοντέλα Εξυπηρετητών Διαφορετικά μοντέλα στον σχεδιασμό εξυπηρετητών Ιστού: Εξυπηρετητές συμβάντων (evet-based): Flash, Zeus Εξυπηρετητές διεργασίας (Process-based): Apache, NCSA Εξυπηρετητές νημάτων (Thread-based): JAWS, IIS Εξυπηρετητές πυρήνα (kerel-based): Tux, AFPA, ExoKerel Στη συγκριτική μελέτη των μοντέλων αυτών βαρύνουν χαρακτηριστικά όπως επίδοση, προστασία, κοινοχρηστία, επεκτασιμότητα κλπ. 57 58