HY-335 : Δίκτυα Υπολογιστών Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο 2009-2010 O R E K W N T net works Επίπεδo.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Τεχνολογίες Internet Υπηρεσίες & Εφαρμογές Τμήμα 1I-ΙΝΠ01 – Web Design / Development Κωνσταντίνος Σαπουντζής.
Advertisements

Τεχνολογίες Web Απαραίτητες γνώσεις για την υλοποίηση της άσκησης.
Δημιουργία Ιστοσελίδων σε HTML και FrontPage Πρόγραμμα Αναμόρφωσης Προπτυχιακών Σπουδών Κεντρικό Γραφείο Υποστήριξης Εκπαιδευτικού Έργου Αλέξανδρος Λεκατσάς.
ΑΠΟΤΙΜΗΣΗ ΑΠΟΔΟΣΗΣ ΔΙΚΤΥΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΜΕΤΑΦΟΡΑΣ ΚΑΙ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΣΥΝΔΕΣΗΣ Ιωάννης Κόμνιος Μεταπτυχιακή Διατριβή Τμήμα.
The EDONKEY protocol Ιωάννης Ζιαγκλιαβός Α.Μ.123 Παναγιώτης Κατσίκος Α.Μ.124 Ευφροσύνη Κουρή Α.Μ. 138.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
Υλοποίηση Συστήματος Ψηφοφορίας με τη χρήση Java RMI
Διαδίκτυο Κίκα Χρυσοστόμου.
Από Άκρο σε Άκρο Αποφυγή Συμφόρησης
Ιστορία του Ιντερνετ.
ΠΜΣ ΔΥΝΗΤΙΚΕΣ ΚΟΙΝΟΤΗΤΕΣ
Καθυστέρηση σε δίκτυα μεταγωγής πακέτων
Τεχνολογία Δικτύων Επικοινωνιών
Microsoft Exchange Server Τι είναι ο Exchange Ο Exchange Server χρησιμοποιείται για την παροχή υπηρεσίας ηλεκτρονικού ταχυδρομείου ( service).
Διαδίκτυο Κίκα Χρυσοστόμου.
Δ.Π.Θ. Συνδέοντας έγγραφα - 1 Συνδέοντας έγγραφα Μια σύνδεση στο Web (link) αποτελείται από δύο μέρη : Aυτό που βλέπουμε στη σελίδα και λέγεται άγκυρα.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Τεχνολογίες Διαδικτύου
Ενότητα Β: Εισαγωγή στο Διαδίκτυο Κουμπή Βασιλάντα, Ph.D, MSc.
Σελίδα 1 ΕΚΠΑ. «Διαμόρφωση υπηρεσίας καταλόγου Active Directory σε Windows 2003» Τηλέμαχος Ράπτης Εθνικό και Καποδιστριακό.
ΙΩΑΝΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΥ 3ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 19 ΟΚΤΩΒΡΙΟΥ 2012 ΑΙΘΟΥΣΑ Β4 1.
ΜΟΝΤΕΛΟ ΕΞΥΠΗΡΕΤΟΥΜΕΝΟΥ – ΕΞΥΠΗΡΕΤΗΤΗ ( CLIENT – SERVER )
ΤCP/IP Τι είναι; Σύντομο Ιστορικό
Κεφάλαιο 11.2 Sockets.
Υπηρεσίες δικτύων επικοινωνίας
Τεχνολογίες και Εφαρμογές Πολυμέσων
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
Ηλεκτρονικό Ταχυδρομείο
Το Διαδίκτυο Τι πρέπει να ξέρετε για το Διαδίκτυο.
Διαχείριση πληροφοριών και επικοινωνίες Ονομ/νυμο Επιμορφωτή Επιμορφωτής: Ονομ/νυμο Επιμορφωτή ΥΠΕΠΘ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ»
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
National Technical University of AthensΤεχνολογίες Διαδικτύου Σύνοψη 1Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή 1.2 Πρωτόκολλα TCP/IP Διαστρωμάτωση.
Μάθημα: Δίκτυα Υπολογιστών Remote MONitoring Copyright  Οικονομικό Πανεπιστήμιο Αθηνών 1 Remote MONitoring, RMON  Παρακολούθηση δικτύου (network monitoring):
OSI Μοντέλο αναφοράς.
ΠΛΗΡΟΦΟΡΙΚΗ Α’ ΓΥΜΝΑΣΙΟΥ
HY-335 : Δίκτυα Υπολογιστών DHCP Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο
Τεχνολογία TCP/IP TCP/IP internet είναι ένα οποιοδήποτε δίκτυο το οποίο χρησιμοποιεί τα πρωτόκολλα TCP/IP. Διαδίκτυο (Internet) είναι το μεγαλύτερο δίκτυο.
Β5.1.2 Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας.
HY-335 : Δίκτυα Υπολογιστών Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο O R E K W N T net works Επίπεδo.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Σύνοψη 1 Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή
1 Παγκόσμιος Ιστός. 2 World Wide Web- Ο Παγκόσμιος Ιστός  Ανακαλύφτηκε από τον Tim-Berners Lee, ερευνητή του CERN (Ευρωπαϊκό εργαστήριο Φυσικής Υψηλής.
ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ (ΕΡΓΑΣΤΗΡΙΟ). 2 Εξοικείωση με πρωτόκολλο TCP Connection Oriented Αξιοπιστία στην παράδοση Σειρά Καθυστερήσεις Χαρακτηριστικά.
Κεφάλαιο 7 Διαδικτύωση-Internet 7.3 Πρωτόκολλο TCP.
To πρωτόκολλο διαδικτύου IP -χρησιμοποιείται από αποστολέα και παραλήπτη που μπορεί να βρίσκονται σε διαφορετικά δίκτυα για να ανταλλάξουν πακέτα πληροφοριών.
User Datagram Protocol (UDP)
Προχωρημένα Θέματα Δικτύων
Κεφάλαιο 4. Επίπεδο μεταφοράς
LAB HY335 Evripidis tzamousis
Κεφάλαιο 10: Υπηρεσίες και εφαρμογές Διαδικτύου
Δίκτυα Επικοινωνιών Ενότητα # 6: Επίπεδο Μεταφοράς TCP/UDP
Κεφάλαιο 7 Διαδικτύωση-Internet
Εφαρμογεσ τηλεματικησ στη διοικηση
Κεφάλαιο 6o. Επίπεδο εφαρμογής
ΥΠΗΡΕΣΙΕΣ ΚΑΙ ΕΦΑΡΜΟΓΕΣ ΔΙΑΔΙΚΤΥΟΥ 10.1 Υπηρεσίες Διαδικτύου
Κεφάλαιο 7 Διαδικτύωση- Internet
Υπηρεσίες του διαδικτύου
Κεφάλαιο 7: Διαδικτύωση-Internet
Λύσεις Ασφάλειας στο Επίπεδο Διασύνδεσης
Κεφάλαιο 7:Διαδικτύωση-Internet
9.2 Δομή και υπηρεσίες του Διαδικτύου
Κεφάλαιο 7: Διαδικτύωση-Internet
Κεφάλαιο 7: Διαδικτύωση-Internet Μάθημα 7.11: Πρωτόκολλα εφαρμογής
10.1 Υπηρεσίες και εφαρμογές Διαδικτύου
Κεφάλαιο 4. Επίπεδο μεταφοράς
9.3 υπηρεσίες του Διαδικτύου
Κεφάλαιο 1 Διαδίκτυο και παγκόσμιος ιστός Εισαγωγικές έννοιες
Υπηρεσίες Διαδικτύου.
Υπηρεσίες και εφαρμογές Διαδικτύου
HY-335 : Δίκτυα Υπολογιστών
Μεταγράφημα παρουσίασης:

HY-335 : Δίκτυα Υπολογιστών Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο O R E K W N T net works Επίπεδo Εφαρμογής

Επίπεδο εφαρμογής 2 Δημιουργώντας μια δικτυακή εφαρμογή Γράφουμε προγράμματα τα οποία: m Τρέχουν σε διαφορετικά τερματικά συστήματα m και επικοινωνούν μέσω δικτύου Π.χ., το λογισμικό του web server επικοινωνεί με το λογισμικό του browser Λίγο λογισμικό έχει γραφτεί για συσκευές στον πυρήνα του δικτύου m Οι συσκευές στον πυρήνα του δικτύου δεν τρέχουν κώδικα εφαρμογής χρήστη m Η εφαρμογή στα τερματικά συστήματα επιτρέπει τη ραγδαία ανάπτυξη και διάδοση εφαρμογών application transport network data link physical application transport network data link physical application transport network data link physical

Επίπεδο εφαρμογής 3 Γενικές αρχιτεκτονικές εφαρμογών r Πελάτη-εξυπηρετητή (client-server) r Διομότιμο σύστημα (peer-to-peer P2P) r Υβριδικό του πελάτη-εξυπηρετητή και του διομότιμου συτήματος

Επίπεδο εφαρμογής 4 Client-server αρχιτεκτονική server: m Συνεχής διαθεσιμότητα (always-on host) m Μόνιμη IP διεύθυνση m Ομάδα από servers (server farms) για κλιμάκωση (scaling) clients: m Επικοινωνούν με τον server m Πιθανότατα χωρίς συνεχή σύνδεση m Πιθανότατα με δυναμικές IP addresses (που λαμβάνουν από έναν DCHP server) m Δεν επικοινωνούν άμεσα ο ένας client με τον άλλον

Επίπεδο εφαρμογής 5 Καθαρή P2P αρχιτεκτονική r Δεν υπάρχει server που να είναι συνεχώς διαθέσιμος r Τυχαία τερματικά συστήματα επικοινωνούν το ένα με το άλλο r Οι peers έχουν διακοπτόμενη σύνδεση στο Ιντερνετ και οι IP διευθύνσεις τους μπορεί να αλλάζουν r Παράδειγμα: Gnutella  Είναι κλιμακώσιμα αλλά όχι εύκολο να τα διαχειριστείς

Επίπεδο εφαρμογής 6 Υβριδικό client-server και P2P Skype m Εφαρμογή διαδικτυακής τηλεφωνίας m Εύρεση διεύθυνσης απομακρυσμένου προσώπου: κεντρικοποιημένος server(s) m Η σύνδεση από client σε client είναι άμεση (όχι μέσω server) Άμεση ανταλλαγή μυνημάτων (instant messaging) m Η συνομιλία μεταξύ δύο χρηστών είναι P2P m Εντοπισμός παρουσίας/θέσης κεντρικοποιημένη: Ο χρήστης καταχωρεί την IP διεύθυνσή του με κεντρικό server όταν μπαίνει online Ο χρήστης επικοινωνεί με τον κεντρικό server για να βρει τις IP διευθύνσεις των επαφών του

Επίπεδο εφαρμογής 7 Διεργασίες που επικοινωνούν Διεργασία: πρόγραμμα που τρέχει σε ένα host r Στον ίδιο host: δύο διεργασίες επικοινωνούν μεταξύ τους με διαδεργασιακή επικοινωνία (inter- process communication) (ορίζεται στο OS)  Διεργασίες σε διαφορετικούς hosts επικοινωνούν με την ανταλλαγή μηνυμάτων Διεργασία client: η διεργασία που ξεκινάει την επικοινωνία Διεργασία server : η διεργασία που περιμένει για επικοινωνία  Σημείωση: εφαρμογές με P2P αρχιτεκτονικές έχουν διεργασίες client & server

Επίπεδο εφαρμογής 8 Διεργασία στον δέκτη Ο sender προσδιορίζει τη διεργασία στη συσκευή του δέκτη χρησιμοποιώντας τα παρακάτω δύο στοιχεία: r όνομα ή διεύθυνση της συσκευής r ένα identifier που προσδιορίζει την διεργασία στον δέκτη προσδιορίζει μοναδικά το network interface του δέκτη μοναδικότητα στο Internet IP address Port number

Επίπεδο εφαρμογής 9 Sockets r Διεργασίες στέλνουν/λαμβάνουν μηνύματα προς/από socket r Socket μοιάζει με μια “πόρτα” m Η αποστέλουσσα διεργασία στέλνει το μήνυμα έξω από την πόρτα m Η αποστέλλουσα διεργασία υποθέτει υποδομή μεταφοράς πίσω από την πόρτα που φέρνει το μήνυμα στο socket της λαμβάνουσας διεργασίας διεργασία TCP με buffers, μεταβλητές socket host ή server διεργασία TCP με buffers, μεταβλητές socket host ή server Internet Ελέγχεται από το OS Ελέγχεται από το σχεδιαστή της εφαρμογής API - επιλέγει: r Το πρωτόκολλο μεταφοράς r τιμές σε παραμέτρους Το socket είναι η διεπαφή μεταξύ του επιπέδου εφαρμογής & επιπέδου μεταφοράς μέσα σε μία συσκευή καθώς επίσης μεταξύ της εφαρμογής & δικτύου

Επίπεδο εφαρμογής 10 Διευθυνσιοδότηση διεργασιών Για να λάβει μηνύματα η διεργασία πρέπει να έχει έναν identifier  Ο host έχει μία μοναδική 32-bit IP διεύθυνση  Αρκεί η IP διεύθυνση του host στον οποίο τρέχει η διεργασία για τον προσδιοριμσό της διεργασίας; Aπάντηση: ΌΧΙ, πολλές διεργασίες μπορεί να τρέχουν στον ίδιο host  O identifier περιέχει IP διεύθυνση & αριθμούς θυρών (port numbers) της διεργασίας στο host Παραδείγματα αριθμών θυρών: m HTTP server: 80 m Mail server: 25 Για να στείλουμε ένα HTTP μήνυμα στον gaia.cs.umass.edu web server: m IP διεύυθνση: m Αριθμός θ ύρας: 80

Επίπεδο εφαρμογής 11 Πρωτόκολλα επιπέδου εφαρμογής r Τύποι μηνυμάτων που ανταλάσσονται m π.χ., αίτηση, απάντηση r Σύνταξη μηνύματος: m Τι πεδία υπάρχουν στο μήνυμα και πως αυτά διαχωρίζονται r Σημασιολογία μηνύματος m Σημασία της πληροφορίας στα πεδία r Κανόνες για το πότε και πώς οι διεργασίες στέλνουν & απαντούν σε μηνύματα Πρωτόκολλα δημοσίου τομέα: r Ορίζονται σε RFCs r Επιτρέπουν διαλειτουργικότητα r π.χ., HTTP, SMTP Ιδιοταγή πρωτόκολλα: r π.χ., KaZaA

Επίπεδο εφαρμογής 12 Τι υπηρεσία μεταφοράς χρειάζεται μία εφαρμογή; Απώλεια δεδομένων r Κάποιες εφαρμογές (π.χ., ήχου) μπορούν να ανεχθούν κάποιες απώλειες r Άλλες εφαρμογές (π.χ., μεταφορά αρχείων, telnet) απαιτούν 100% αξιόπιστη μεταφορά δεδομένων Χρονισμός r Κάποιες εφαρμογές (π.χ., διαδικτυακή τηλεφωνία, διαδραστικά παιχνίδια) απαιτούν χαμηλή καθυστέρηση για να είναι αποτελεσματικές Εύρος ζώνης r Κάποιες εφαρμογές (π.χ., πολυμεσικές) απαιτούν κάποιο ελάχιστο εύρος ζώνης για να είναι αποτελεσματικές r Άλες εφαρμογές (“ελαστικές εφαρμογές”) χρησιμοποιούν οποιοδήποτε εύρος ζώνης είναι διαθέσιμο

Επίπεδο εφαρμογής 13 Απαιτήσεις υπηρεσίας μεταφοράς για συνήθεις εφαρμογές Εφαρμογή Μεταφορά αρχείων Έγγραφα Web φωνή/video πραγματικού χρόνου Αποθηκευμένη φωνή/video Διαδραστικά παιχνίδια Άμεση ανταλλαγή μηνυμάτων Απώλεια δεδομένων Καμία απώλεια Ανοχή σε απώλειες Καμία απώλεια Εύρος ζώνης ελαστική ήχος: 5kbps-1Mbps video:10kbps-5Mbps Όπως πριν Λίγα kbps πάνω ελαστική Ευαισθησία σε καθυστερήσεις όχι ναι, της τάξης των100 msec ναι, μερικά secs ναι, της τάξης των 100 msec Ναι και όχι

Επίπεδο εφαρμογής 14 Πρωτόκολλα μεταφοράς υπηρεσιών στο Internet TCP υπηρεσία: Συνδεσιστρεφής: απαιτείται εγκαθίδρυση μεταξύ διεργασιών των client & server Αξιόπιστη μεταφορά μεταξύ διεργασιών των sender & receiver Έλεγχος ροής: ο sender δεν κατακλύζει τον receiver Έλεγχος συμφόρησης: μειώνει την ροή του sender στην περίπτωση υπερφόρτωσης του δικτύου Δεν παρέχει χρονικές ή ελάχιστου bandwidth εγγυήσεις UDP υπηρεσία: Αναξιόπιστη μεταφορά δεδομένων μεταξύ της αποστέλλουσας και της λάμβάνουσας διεργασίας Δεν παρέχει: εγκαθίδρυση σύνδεσης, αξιοπιστία, έλεγχος ροής, έλεγχος συμφόρησης, χρονισμός, ή εγγύηση εύρους ζώνης Q: Γιατί υπάρχει τότε η UDP σύνδεση?

Επίπεδο εφαρμογής 15 Εφαρμογές διαδικτύου: πρωτόκολλα εφαρμογής, μεταφοράς Εφαρμογή Απομακρυσμένη προσπέλαση τερματικού Web Μεταφορά αρχείων Πολυμέσα συνεχούς ροής Διαδικτυακή τηλεφωνία Πρωτόκολλο επιπέδου εφαρμογής SMTP [RFC 2821] Telnet [RFC 854] HTTP [RFC 2616] FTP [RFC 959] Ιδιοταγές (π.χ. RealNetworks) ιδιοταγές (π.χ., Vonage,Dialpad) Πρωτόκολλο μεταφοράς TCP TCP ή UDP συνήθως UDP

Επίπεδο εφαρμογής 16 Κεφάλαιο 2: Επίπεδο εφαρμογής r 2.1 Αρχές εφαρμογών διαδικτύου m Αρχιτεκτονικές εφαρμογων m Απαιτήσεις εφαρμογών r 2.2 Web and HTTP r 2.4 Ηλεκτρονικό Mail m SMTP, POP3, IMAP r 2.5 DNS r 2.6 P2P μεταφορά αρχείων r 2.7 Προγραμματισμός socket με TCP r 2.8 Προγραμματισμός socket με UDP r 2.9 Κατασκευή ενός Web server

Επίπεδο εφαρμογής 17 Web και HTTP Ορολογία r Μία ιστοσελίδα αποτελείται από αντικείμενα (objects) r Ένα Object μπορεί να είναι: HTML file, JPEG image, Java applet, audio file,… r Μία ιστοσελίδα αποτελείται από base HTML-file που περιλαμβάνουν μερικά referenced objects  Κάθε object γίνεται addressable από ένα URL Παράδειγμα URL: host name path name

Επίπεδο εφαρμογής 18 HTTP overview HTTP: hypertext transfer protocol r Πρωτόκολλο του Web επιπέδου εφαρμογής r client/server model m client: browser που ζητά, λαμβάνει, “εμφανίζει” Web objects m server: Web server στέλνει objects ως απάντηση σε αιτήματα που λαμβάνει r HTTP 1.0: RFC 1945 r HTTP 1.1: RFC 2068 PC running Explorer Server running Apache Web server Mac running Navigator HTTP request HTTP response

Επίπεδο εφαρμογής 19 HTTP overview (συνέχεια)  Χρήση του TCP Ο client: ξεκινά μία TCP σύνδεση: δημιουργεί socket στο server, port 80 Ο server: δέχεται τη TCP σύνδεση από τον client Ανταλλαγή HTTP μηνυμάτων (application-layer protocol messages) μεταξύ browser (HTTP client) & Web server (HTTP server) Κλείσιμο TCP σύνδεσης

Επίπεδο εφαρμογής 20 HTTP overview (συνέχεια) Χρήση του TCP: Ο client ξεκινά μία TCP σύνδεση (δημιουργεί socket) στο server, port 80 Ο server δέχεται τη TCP σύνδεση από τον client Ανταλλαγή HTTP μηνυμάτων (application-layer protocol messages) μεταξύ browser (HTTP client) & Web server (HTTP server) Κλείσιμο TCP connection HTTP δεν διατηρεί πληροφορία σχετικά με την κατάσταση του συστήματος (είναι “stateless”) Ο server δεν διατηρεί πληροφορίες από παλιότερα αιτήματα των clients (requests ) Πρωτόκολλα που διατηρούν καταστάσεις του συστήματος (“state”) είναι περίπλοκα !  Παλιότερη ιστορία (state) πρέπει να διατηρείται & Εάν οι server/client καταρρεύσουν  η εικόνα που έχουν για την κατάσταση τους μπορεί να διαφέρει  το πρωτόκολλο πρέπει να εξασφαλίσει μια “κοινή” εικόνα

Επίπεδο εφαρμογής 21 HTTP συνδέσεις Nonpersistent HTTP r Το πολύ ένα αντικείμενο στέλνεται πάνω από μία TCP σύνδεση r HTTP/1.0 χρησιμοποιεί nonpersistent HTTP Persistent HTTP  Πολλαπλά αντικείμενα μπορούν να σταλούν πάνω από μία TCP σύνδεση μεταξύ client & server r HTTP/1.1 χρησιμοποιεί persistent συνδέσεις σε default κατάσταση

Επίπεδο εφαρμογής 22 Nonpersistent HTTP Υποθέστε ο user βάζει το URL 1a. HTTP client ξεκινάει μια TCP σύνδεση στον HTTP server στο port HTTP client στέλνει HTTP μήνυμα αιτήματος (περιλαμβάνοντας το URL) στο socket της TCP σύνδεσης. Το μύνυμα υποδεικνύει ότι ο client ζητάει το αντικείμενο someDepartment/home.index 1b. HTTP server στο host περιμένει για TCP σύνδεση στο port 80 “δέχεται” τη σύνδεση, ενημερώνοντας τον client 3. HTTP server λαμβάνει το μήνυμα αιτήματος, κατασκευάζει ένα μήνυμα απάντησης περιλαμβάνοντας το ζητούμενο αντικείμενο, & στέλνει τι μήνυμα στο socket time (περιέχει κείμενο, αναφορές σε 10 jpeg εικόνες)

Επίπεδο εφαρμογής 23 Nonpersistent HTTP (συνέχεια) 5. HTTP client λαμβάνει το μήυμα απάντησης που περιέχει το html αρχείο, και το δείχνει. Αναλύοντας το html αρχείο, βρίσκει 10 αναφερόμεναr jpeg αντικείμενα 6. Τα βήματα 1-5 επαναλαμβάνονται για κάθε ένα από τα 10 jpeg αντικείμενα 4. HTTP server κλείνει TCP σύνδεση time

Επίπεδο εφαρμογής 24 Non-Persistent HTTP: Χρόνος απόκρισης Ορισμός του RRT: Χρόνος για να στείλει ένα μικρό πακέτο να ταξιδέψει από τον client στον server και πίσω Χρόνος απόκρισης: r ένα RTT για να ξεκινήσει την TCP σύνδεση r ένα RTT για το HTTP αίτημα και για τα πρώτα bytes τής HTTP απάντησης να επιστρέψει r Χρόνος για να μεταδοθεί το αρχείο σύνολο = 2RTT + χρόνος μετάδοσης χρόνος μετάδοσης ξεκινάει TCP σύνδεση RTT ζητάει αρχείο RTT λήψη αρχείου time

Επίπεδο εφαρμογής 25 Persistent HTTP Nonpersistent HTTP :  απαιτεί 2 RTTs ανά αντικείμενα r OS overhead για κάθε TCP σύνδεση r browsers συχνά ανοίγουν παράλληλες TCP συνδέσεις για να φέρουν αναφερόμενα αντικείμενα Persistent HTTP r ο server αφήνει τη σύνδεση ανοιχτή μετά την αποστολή της απάντησης r τα επακόλουθα HTTP μηνύματα μεταξύ ίδιου client/server στέλνονται πάνω από την ανοιχτή σύνδεση Persistent χωρίς pipelining: r ο client εκδίδει νέο αίτημα μόνο όταν η προηγούμενη απάντηση ληφθεί  1 RTT για κάθε αναφερόμενο αντικείμενο Persistent με pipelining: r default στο HTTP/1.1 r ο client στέλνει αιτήματα μόλις αντιμετωπίσει ένα αναφερόμενο αντικείμενο  1 RTT για όλα τα αναφερόμενα αντικείμενα

Επίπεδο εφαρμογής 26 HTTP μήνυμα αιτήματος r δύο τύποι ΗTTP μηνυμάτων: αίτημα, απάντηση r HTTP μήνυμα αιτήματος: m ASCII (format που διαβάζονται από τον άνθρωπο) GET /somedir/page.html HTTP/1.1 Host: User-agent: Mozilla/4.0 Connection: close Accept-language:fr (extra carriage return, line feed) γραμμή αιτήματος (GET, POST, HEAD εντολές) Γραμμές επικεφαλίδων Carriage return, line feed indicates end of message

Επίπεδο εφαρμογής 27 HTTP μήνυμα μηνύματος: γενικό format

Επίπεδο εφαρμογής 28 Μοντελοποίηση Καθυστέρησης Q: Πόσος χρόνος απαιτείται για τη λήψη ενός αντικειμένου από έναν Web server μετά της αποστολή μίας αίτησης; Αγνοώντας τη συμφόρηση, η καθυστέρηση επηρεάζεται από: r την εγκαθίδρυση της TCP σύνδεσης r την καθυστέρηση αποστολής δεδομένων r αργή εκκίνηση Συμβολισμοί, παραδοχές: r Θεωρείστε μία ζεύξη μεταξύ του client και του server ρυθμού R r S: MSS (bits) r O: μέγεθος object (bits) r Δεν υφίστανται επαναπο- στολές(δεν υπάρχουν απώλειες (loss) ή αλλοιώσεις (corruption)) Μέγεθος παραθύρου: r Καταρχάς, θεωρείστε σταθερό παράθυρο συμφόρησης, W segments r Στη συνέχεια, δυναμικό παράθυρο, μοντελοποιώντας την αργή εκκίνηση.

Επίπεδο εφαρμογής 29 Μοντελοποίηση HTTP r Assume Web page consists of: m 1 base HTML page (of size O bits) m M images (each of size O bits) r Non-persistent HTTP: m M+1 TCP connections in series m Response time = (M+1)O/R + (M+1)2RTT + sum of idle times r Persistent HTTP: m 2 RTT to request and receive base HTML file m 1 RTT to request and receive M images m Response time = (M+1)O/R + 3RTT + sum of idle times r Non-persistent HTTP with X parallel connections m Suppose M/X integer. m 1 TCP connection for base file m M/X sets of parallel connections for images. m Response time = (M+1)O/R + (M/X + 1)2RTT + sum of idle times

Επίπεδο εφαρμογής 30 HTTP Response time (in seconds) RTT = 100 msec, O = 5 Kbytes, M=10 and X=5 For low bandwidth, connection & response time dominated by transmission time. Persistent connections only give minor improvement over parallel connections.

Επίπεδο εφαρμογής 31 HTTP Response time (in seconds) RTT =1 sec, O = 5 Kbytes, M=10 and X=5 For larger RTT, response time dominated by TCP establishment & slow start delays. Persistent connections now give important improvement: particularly in high delay  bandwidth networks.