1 / 93

Δίκτυα Υπολογιστών (Γ’ έτος, ΣΤ’ εξ)

Δίκτυα Υπολογιστών (Γ’ έτος, ΣΤ’ εξ) Διάλεξη # 7: Επίπεδο Εφαρμογών ( Application layer). Εργαστηριακές ασκήσεις στο εργαλείο προσομοίωσης δικτύων OPNET. Γαβαλάς Δαμιανός dgavalas@aegean.gr. Εαρινό εξάμηνο. Περίληψη διάλεξης. Γενικές αρχές και κατηγορίες δικτυακών εφαρμογών

Download Presentation

Δίκτυα Υπολογιστών (Γ’ έτος, ΣΤ’ εξ)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Δίκτυα Υπολογιστών (Γ’ έτος, ΣΤ’ εξ) Διάλεξη #7:Επίπεδο Εφαρμογών (Application layer). Εργαστηριακές ασκήσεις στο εργαλείοπροσομοίωσης δικτύων OPNET Γαβαλάς Δαμιανός dgavalas@aegean.gr Εαρινό εξάμηνο

  2. Περίληψη διάλεξης • Γενικές αρχές και κατηγορίες δικτυακών εφαρμογών • Ο ρόλος του Επιπέδου Εφαρμογών (Application Layer) • Πρωτόκολλα Επιπέδου Εφαρμογών • HTTP • FTP • SMTP • DNS • Εργαστηριακές ασκήσεις στο εργαλείο προσομοίωσης δικτύων

  3. Επίπεδο Εφαρμογών (Application Layer)

  4. Το μοντέλο αναφοράς OSI (Open Systems Interconnection) Τα πακέτα στο επίπεδο μεταφοράς ονομάζονται segments Τα πακέτα στο επίπεδο δικτύου ονομάζονται datagrams Τα πακέτα στο data link layer ονομάζονται πλαίσια (frames)

  5. Το μοντέλο αναφοράς TCP/IP

  6. Παραδείγματα δικτυακών εφαρμογών • E-mail • Web • Instant messaging (π.χ. chat) • Remote login • P2P file sharing • Multi-user network games • Audio και video Streaming • Internet telephony • Real-time video conference

  7. Ανάπτυξη προγραμμάτων που: τρέχουν σε διαφορετικά συστήματα επικοινωνούν μέσω ενός δικτύου π.χ., Web: Το λογισμικό του Web server επικοινωνεί με το λογισμικό ενός browser Το επίπεδο εφαρμογών ΔΕΝ αφορά συσκευές του πυρήνα (core) των δικτύων, π.χ. routers Αυτές οι συσκευές δεν λειτουργούν στο επίπεδο μεταφοράς Ένας τέτοιος σχεδιασμός επιτρέπει τη γρήγορη ανάπτυξη εφαρμογών Δημιουργία δικτυακών εφαρμογών application transport network data link physical application transport network data link physical application transport network data link physical

  8. Αρχιτεκτονικές δικτυακών εφαρμογών • Αρχιτεκτονικές δικτυακών εφαρμογών • Client-server (μοντέλο πελάτη – διακομιστή) • Peer-to-peer (P2P) (μοντέλο διομότιμης επικοινωνίας) • Hybrid of client-server and P2P (υβριδικό μοντέλο πελάτη – διακομιστή και διομότιμης επικοινωνίας)

  9. Αρχιτεκτονική client-server Διακομιστής (server): • Ένας κόμβος που είναι πάντα ‘ανοικτός’ (always-on host) • Σταθερή IP διεύθυνση • Πολλαπλοί servers (server farms) για καλύτερη κλιμάκωση Πελάτες (clients): • Επικοινωνούν με servers • Δεν είναι πάντοτε on ή συνδεδεμένοι • Μπορεί να έχουν δυναμικές IP διευθύνσεις • Δεν επικοινωνούν απ’ ευθείας μεταξύ τους

  10. Αμιγής P2P αρχιτεκτονική • Δεν υπάρχει κάποιος ‘always-on’ server • Αυθαίρετη απευθείας επικοινωνία τελικών κόμβων (end systems) • Οι επικοινωνούντες ομότιμοι κόμβοι (peers)δεν είναι πάντα συνδεδεμένοι ούτε έχουν απαραίτητα σταθερή IP διεύθυνση • Παράδειγμα: Gnutella • Αυτή η αρχιτεκτονική προσφέρει πολύ καλή κλιμάκωση (Highly scalable) • Είναι όμως δύσκολη στη διαχείριση (difficult to manage)

  11. Υβριδική αρχιτεκτονική client-server και P2P • Napster • H μεταφορά αρχείων είναι P2P • Η αναζήτηση αρχείων είναι κεντρική (centralized): • Οι Peers καταγράφουν το περιεχόμενό τους σε έναν κεντρικό server • Οι Peers εκτελούν ερωτήματα στον κεντρικό server για να εντοπίσουν περιεχόμενο που τους ενδιαφέρει • Instant messaging • Online Chat μεταξύ των χρηστών με P2P • Ο εντοπισμός της τοποθεσίας του χρήστη γίνεται κεντρικά: • Ο χρήστης καταγράφει την IP διεύθυνσή του σε ένα κεντρικό server όταν συνδέεται online • Ο χρήστης βρίσκει μέσω του κεντρικού server τις IP διευθύνσεις των φίλων του

  12. Client process:η διεργασία που αρχίζει μια επικοινωνία Server process:η διεργασία που περιμένει διεργασίες πελατών να έρθουν σε επαφή μαζί της Επικοινωνία μεταξύ διεργασιών (Processes communication) • Διεργασία (Process):πρόγραμμα που τρέχει σε έναν Η/Υ • Μέσα στον ίδιο H/Y, δύο διεργασίες μπορούν να επικοινωνήσουν χρησιμοποιώνταςinter-process communication (ορίζεται από το λειτουργικό σύστημα) • Διεργασίες που τρέχουν σε διαφορετικούς Η/Υ επικοινωνούν με την ανταλλαγή μηνυμάτων(messages)

  13. Μια διεργασία πρέπει να έχει ένα αναγνωριστικό (διεύθυνση) για να λάβει μηνύματα Κάθε κόμβος έχει μια μοναδική 32-bit IP διεύθυνση Ερώτηση:αρκεί η IP διεύθυνση του Η/Υ όπου τρέχει μια διεργασία ως διεύθυνση της διεργασίας; Απάντηση:Όχι, πολλές διεργασίες μπορεί να εκτελούνται ταυτόχρονα στον ίδιο Η/Υ Η διεύθυνση μια διεργασίας περιλαμβάνει την IP διεύθυνση του Η/Υ και τον αριθμό θύρας (port number) που σχετίζεται με τη διεργασία Παραδείγματα port numbers: HTTP server: 80 Mail server: 25 Διευθυνσιοδότηση διεργασιών (Addressing processes)

  14. Τον τύπο των μηνυμάτων που ανταλλάσσονται, π.χ., request & response μηνύματα Σύνταξη των μηνυμάτων: ποια πεδία περιλαμβάνουν, πως απεικονίζονται τα πεδία Σημασία της πληροφορίας που ενσωματώνεται σε κάθε πεδίο Κανόνες σχετικά με το πότε και πως οι διεργασίες στέλνουν και αποκρίνονται σε μηνύματα Δημόσια (Public-domain)πρωτόκολλα: Ορίζονται σε RFCs (Requests for Comments) Επιτρέπουν τη διαλειτουργικότητα π.χ., HTTP, SMTP Ιδιωτικά (Proprietary)πρωτόκολλα: π.χ., KaZaA Ένα πρωτόκολλο του Application layer ορίζει:

  15. Απαιτήσεις κοινών εφαρμογών από την υπηρεσία μεταφοράς (Transport service) Time Sensitive όχι όχι όχι ναι, 100’s msec ναι, λίγα secs ναι, 100’s msec ναι Application file transfer e-mail Web documents real-time audio/video stored audio/video interactive games instant messaging Bandwidth elastic elastic elastic audio: 5kbps-1Mbps video:10kbps-5Mbps same as above few kbps up elastic Data loss no loss no loss no loss loss-tolerant loss-tolerant loss-tolerant no loss Elastic: όσο bandwidth περισσέψει Loss-tolerant: ανεκτικότητα σε απώλειες

  16. TCP: Με σύνδεση (connection-oriented):απαιτείται εγκατάσταση σύνδεσης μεταξύ των διεργασιών πελάτη και διακομιστή Αξιόπιστη μεταφορά (reliable transport)μεταξύ της διεργασίας-αποστολέα και της διεργασίας-παραλήπτη Έλεγχος ροής (flow control):ο αποστολέας δεν κατακλύζει τον παραλήπτη με πολλά δεδομένα Έλεγχος συμφόρησης (congestion control):ο αποστολέας δεν υπερφορτώνει το δίκτυο Δεν παρέχει:εγγυήσεις για χρονισμό (timing) και χρήση του ελάχιστου δυνατού bandwidth UDP: Γρήγορη αλλά αναξιόπιστη μεταφορά δεδομένων ανάμεσα σε επικοινωνούντες διεργασίες Δεν παρέχει: εγκατάσταση σύνδεσης, αξιοπιστία, έλεγχο ροής, έλεγχο συμφόρησης, εγγυήσεις για χρονισμό (timing) και χρήση του ελάχιστου δυνατού bandwidth Πρωτόκολλα μεταφοράς (transport protocols) στο Internet

  17. Εφαρμογές Internet: πρωτόκολλα του Application και Transportlayer Application layer protocol SMTP [RFC 2821] Telnet [RFC 854] HTTP [RFC 2616] FTP [RFC 959] ιδιωτικό (π.χ. RealNetworks) ιδιωτικό (π.χ., Dialpad) Underlying transport protocol TCP TCP TCP TCP TCP ή UDP τυπικά UDP Application e-mail remote terminal access Web file transfer streaming multimedia Internet telephony

  18. Σύνοψη του HTTP (HyperText Markup Language) www.someschool.edu/someDept/pic.gif path name host name • Πρωτόκολλο του Web,λειτουργεί στο application layer • Μοντέλο client/server • client: ένας browser που στέλνει αιτήσεις, λαμβάνει και εμφανίζει Web αντικείμενα • server: Web server που στέλνει αντικείμενα σε απόκριση εισερχόμενων αιτήσεων • HTTP 1.0: RFC 1945 • HTTP 1.1: RFC 2068 • Web αντικείμενα: HTML, JPEG, Java applet, audio, video files • Κάθε web αντικείμενο έχει μια URL διεύθυνση: HTTP request PC running Explorer HTTP response HTTP request Server running Apache Web server HTTP response Mac running Navigator

  19. Χρησιμοποιεί TCP: Ο client στέλνει μια αίτηση για TCP σύνδεση με το server, στην port 80 Ο server δέχεται την TCP σύνδεση από τον client HTTP μηνύματα (application-layer protocol messages) exchanged between browser (HTTP client) and Web server (HTTP server) TCP connection closed Το HTTP είναι ‘αμνήμων’(“stateless”) Ο server δεν διατηρεί πληροφορία σχετικά με προηγούμενες αιτήσεις πελατών Σύνοψη του HTTP

  20. HTTP συνδέσεις Όχι-επίμονο (Non-persistent) HTTP • Το πολύ ένα web αντικείμενο μπορεί να σταλεί πάνω από κάθε TCP σύνδεση • π.χ. για να «κατεβεί» μια web σελίδα με 10 εικόνες θα χρειαστούν 11 TCP συνδέσεις (εγκατάσταση και τερματισμός) • Το HTTP/1.0 χρησιμοποιεί non-persistent HTTP Επίμονο (Persistent) HTTP • Πολλά web αντικείμενα μπορούν μέσω μίας μόνο TCP σύνδεσης σε έναν web browser • Το HTTP/1.1χρησιμοποιεί persistent συνδέσεις

  21. HTTP request μήνυμα • Δύοτύποι HTTP μηνυμάτων: request, response • HTTP request μήνυμα: • ASCII (μορφή αναγνώσιμη από ανθρώπους) request line (GET, POST, HEAD εντολές) GET /somedir/page.html HTTP/1.1 Host: www.someschool.edu User-agent: Mozilla/4.0 Connection: close Accept-language:fr (extra carriage return, line feed) header lines Carriage return, line feed indicates end of message

  22. HTTP request μήνυμα: γενική μορφή

  23. HTTP response μήνυμα ΗΤΤP status code status line (protocol status code status phrase) HTTP/1.1 200 OK Connection close 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 ... header lines data, e.g., requested HTML file

  24. 200 OK request succeeded, requested object later in this message 301 Moved Permanently requested object moved, new location specified later in this message (Location:) 400 Bad Request request message not understood by server 404 Not Found requested document not found on this server 505 HTTP Version Not Supported HTTP response status codes In first line in server->client response message. A few sample codes:

  25. Πολλά μεγάλα Web sites χρησιμοποιούν cookies Τέσσερα στοιχεία: 1) cookie header γραμμή στο HTTP response μήνυμα 2) cookie header line στο HTTP request μήνυμα 3) Το cookie file διατηρείται στον Η/Υ του χρήστη και το διαχειρίζεται ο browser του χρήστη 4) Αποθήκευση δεδομένων στη βάση δεδομένων του Web site Παράδειγμα: Ο Τάκηςσυνδέεται στο Internet πάντα από τον ίδιο Η/Υ Επισκέπτεται ένα συγκεκριμένο e-commerce site για πρώτη φορά Όταν οι αρχικές HTTP αιτήσεις φθάνουν στο site, το site δημιουργεί ένα μοναδικό ID και το αποθηκεύει στη ΒΔ του Αποθηκεύοντας στοιχεία για τη διάδραση χρηστών με server: cookies

  26. Λειτουργία των Cookies client server usual http request msg usual http response + Set-cookie: 1678 Cookie file Cookie file Cookie file ebay: 8734 amazon: 1678 ebay: 8734 amazon: 1678 ebay: 8734 cookie- specific action usual http request msg cookie: 1678 usual http request msg cookie: 1678 usual http response msg usual http response msg cookie- spectific action server creates ID 1678 for user entry in backend database access access μια βδομάδα αργότερα:

  27. Χρήσεις των cookies • Εξουσιοδότηση πρόσβασης (authorization) • Καλάθια αγορών (shopping carts) • Προτάσεις (recommendations) • .......

  28. Ο browser στέλνει όλα τα HTTP requests σε ένα ενδιάμεσο (cache) Αν το αιτούμενο αντικείμενο υπάρχει στο cache,το cache θα το επιστρέψει Διαφορετικά, το cache θα προωθήσει την αίτηση στον (origin)που θα επιστρέψει το αντικείμενο στον client Προσωρινή αποθήκευση Web αντικειμένων: web caches (proxy server) Στόχος:να ικανοποιήσουμε τις αιτήσεις των clients χωρίς απαραίτητα τη βοήθεια του web server που αποθηκεύει το αιτούμενο περιεχόμενο origin server Proxy server HTTP request HTTP request client HTTP response HTTP response HTTP request HTTP response origin server client Ερώτηση:ποια είναι τα πλεονεκτήματα και ποια τα προβλήματα που εντοπίζετε σε αυτή τη μέθοδο;

  29. To Cache (proxy server) λειτουργεί ως client και server Γιατί Web caching? Μειώνει το χρόνο απόκρισηςγια την εξυπηρέτηση client requests Μειώνει την κίνηση (traffic)στο access link του οργανισμού Προσωρινή αποθήκευση Web αντικειμένων: web caches (proxy server) origin servers Internet 1.5 Mbps access link Δίκτυο οργανισμού Μειονεκτήματα: • Τα cached αντικείμενα μπορεί να έχουν στο μεταξύ ενημερωθεί στον origin server • Απαιτείται (μεγάλος) αποθηκευτικός χώρος στον proxy server 10 Mbps LAN cache οργανισμού

  30. O cache συχνά ενημερώνει το περιεχόμενό του Στόχος:ο server αν μη στείλει το αντικείμενο αν το cache έχει μία πρόσφατη έκδοσή του Cache: Ορίζεται η ημερομηνία του cached copy στο HTTP request If-modified-since: <date> Server: το response δεν περιέχει δεδομένα (το αντικείμενο) αν το αντικείμενο δεν έχει τροποποιηθεί από τότε που έγινε cached: HTTP/1.0 304 Not Modified Υπο συνθήκη (Conditional) GET HTTP response HTTP/1.0 304 Not Modified server cache HTTP request msg If-modified-since: <date> To αντικείμενο δεν έχει τροποποιηθεί HTTP request msg If-modified-since: <date> To αντικείμενο έχει τροποποιηθεί HTTP response HTTP/1.0 200 OK <data>

  31. Μεταφορά αρχείων από/προς ένα απομακρυσμένο Η/Υ (FTP server) client/server μοντέλο client:αρχίζει τη διαδικασία της μεταφοράς (από/προς τον FTP server) server: o απομακρυσμένος Η/Υ ftp: RFC 959 Ο ftp server είναι λογισμικό που «τρέχει» στην port 21 FTP: File Transfer Protocol (Πρωτόκολλο Μεταφοράς Αρχείων) FTP user interface FTP client FTP server local file system file transfer user at host remote file system

  32. Ο FTP client ανοίγει μια TCP σύνδεση με την εφαρμογή FTP server στην port 21 Ο Client περνάει από μια διαδικασία εξουσιοδότησης πρόσβασης (Login) Ο Client μπορεί να επισκοπήσει (browse)τους απομακρυσμένους φακέλους στέλνοντας FTP εντολές μέσα από την ίδια TCP σύνδεση Όταν ο server δέχεται μία εντολή για μεταφορά αρχείου, ο server ανοίγει μία “FTP data” TCP σύνδεση με τον client Μετά την ολοκλήρωση της μεταφοράς κάθε αρχείου, ο server κλείνει την “FTP data” σύνδεση Ξεχωριστές FTP data συνδέσεις για κάθε μεταφορά αρχείου FTP: ξεχωριστές συνδέσεις για μεταφορά εντολών και για μεταφορά αρχείων TCP control connection port 21 TCP data connection port 20 FTP client FTP server

  33. Δείγματαεντολών: Στέλνονται ως ASCII κείμενο πάνω από τη “σύνδεση ελέγχου” USER username PASS password LISTεπιστρέφει τη λίστα των αρχείων του τρέχοντος φακέλου RETR filenameανακτάει (get) ένα αρχείο STOR filenameανεβάζει (put) ένα αρχείο στον FTP server Δείγματακωδικών που επιστρέφει ο FTP server: status code και κείμενο (όπως στο HTTP) 331 Username OK, password required 125 data connection already open; transfer starting 425 Can’t open data connection 452 Error writing file FTP εντολές, αποκρίσεις

  34. Τρία κύρια συστατικά: user agents (πράκτορες χρηστών) mail servers simple mail transfer protocol (SMTP) User Agent Πρόγραμμα για την σύνταξη, επεξεργασία, ανάγνωση, διαχείριση μηνυμάτων π.χ., Eudora, Outlook, Netscape Messenger Εξερχόμενα και εισερχόμενα μηνύματα αποθηκεύονται στον mail server Electronic Mail user agent user agent user agent user agent user agent user agent SMTP SMTP SMTP mail server mail server mail server outgoing message queue user mailbox

  35. Mail Servers Τοmailboxαποθηκεύει εισερχόμεναμηνύματα για τους χρήστες Ουρά μηνυμάτων (messagequeue)εξερχόμενων emails To SMTP πρωτόκολλοδιευθετίζει την αποστολή email μηνυμάτων μεταξύ mail servers Ισχύει το client/server μοντέλο: client: ο αποστολέας mail server “server”: ο αποδέκτης mail server Electronic Mail: mail servers user agent user agent user agent user agent user agent user agent SMTP SMTP SMTP mail server mail server mail server

  36. Χρησιμοποιεί TCP για την αξιόπιστη μεταφορά email μηνυμάτων από ένα client σε ένα server, port 25 Απευθείας μεταφορά από τον αποστολέα στον αποδέκτη mail server Τρεις φάσεις μεταφοράς Χειραψία (handshaking) Μεταφορά μηνυμάτων Τερματισμός σύνδεσης Αλληλεπίδραση εντολή/απόκριση (command/response interaction) Εντολές: ASCII text Αποκρίσεις: status code και κείμενο Electronic Mail: SMTP [RFC 2821]

  37. 1) Η Αλίκηχρησιμοποιεί τον User Agent (UA) για να συντάξει το μήνυμα προς τον(“to”)bob@someschool.edu 2) Ο UA της Αλίκης στέλνει το μήνυμα στον mail server της. Το μήνυμα τοποθετείται στην ουρά μηνυμάτων(message queue) 3) Ο mail server της Αλίκης (Client)ανοίγει μια TCP σύνδεση με τον mail server του Bob 4) O SMTP client στέλνει το μήνυμα ης Αλίκης μέσω της TCP σύνδεσης 5) Ο mail server του Bob τοποθετεί το εισερχόμενο μήνυμα στο προσωπικό του mailbox 6) Ο Bob κατεβάζει και διαβάζει το μήνυμα χρησιμοποιώντας τον user agent του Σενάριο: Η Αλίκη στέλνει email στον Bob user agent user agent mail server mail server 1 2 6 3 4 5

  38. Δείγμα SMTP διάδρασης S: 220 hamburger.edu C: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: <alice@crepes.fr> S: 250 alice@crepes.fr... Sender ok C: RCPT TO: <bob@hamburger.edu> S: 250 bob@hamburger.edu ... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Do you like ketchup? C: How about pickles? C: . S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection

  39. Το SMTP χρησιμοποιεί persistent συνδέσεις (μεταφορά πολλών αντικειμένων πάνω από την ίδια σύνδεση) Το SMTP απαιτεί το μήνυμα (header & body) σε 7-bit ASCII Ο SMTP server ψάχνει τους χαρακτήρεςCRLF.CRLFγια να εντοπίσει το τέλος του μηνύματος Σύγκριση με HTTP: HTTP: pull SMTP: push Και τα δύο χρησιμοποιούν ASCII command/response συναλλαγές, status codes HTTP: κάθε αντικείμενο ενσωματώνεται σε ξεχωριστό response μήνυμα SMTP: πολλαπλά αντικείμενα μπορούν να σταλούν σε ένα multipart μήνυμα SMTP: τελικά σχόλια

  40. SMTP: πρωτόκολλο για ανταλλαγή emails RFC 822: πρότυπο που ορίζειτη μορφή (format) των μηνυμάτων header lines, e.g., To: From: Subject: body το “μήνυμα”, μόνο ASCII χαρακτήρες Μορφή Mail μηνύματος header blank line body

  41. MIME: multimedia mail extension, RFC 2045, 2056 Πρόσθετες γραμμές στην κεφαλίδα του μηνύματος δηλώνουντον MIME τύπο περιεχομένου Μορφή mail μηνύματος:πολυμεσικές επεκτάσεις (multimedia extensions) From: alice@crepes.fr To: bob@hamburger.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data MIME version Μέθοδος κωδικοποίησης δεδομένων multimedia δεδομένα, τύπος,υπο-τύπος, δηλώσεις παραμέτρων κωδικοποιημένα δεδομένα

  42. Ο ρόλος του SMTP είναι η παράδοση / αποθήκευση μηνυμάτων στον mail server του παραλήπτη Ο ρόλος του Mail access protocol: ανάκτηση μηνυμάτων από τον server POP: Post Office Protocol [RFC 1939] Εξακρίβωση ταυτότητας (authorization) μεταξύ user agent <--> server και download IMAP: Internet Mail Access Protocol [RFC 1730] Περισσότερες λειτουργίες (πιο πολύπλοκο) Χειρισμός αποθηκευμένων μηνυμάτων στο server HTTP: Hotmail , Yahoo! Mail, etc. Πρωτόκολλα πρόσβασης σε mail servers (Mail access protocols) user agent user agent sender’s mail server SMTP SMTP access protocol receiver’s mail server

  43. Φάση εξακρίβωσης ταυτότητας εντολές client: user:ορίζει το username pass: password Αποκρίσεις του server +OK -ERR Φάση συναλλαγής, client: list: list message numbers retr: retrieve message by number dele: delete quit POP3 protocol S: +OK POP3 server ready C: user bob S: +OK C: pass hungry S: +OK user successfully logged on C: list S: 1 498 S: 2 912 S: . C: retr 1 S: <message 1 contents> S: . C: dele 1 C: retr 2 S: <message 1 contents> S: . C: dele 2 C: quit S: +OK POP3 server signing off

  44. Ρυθμίσεις email

  45. Άνθρωποι:πολλά ‘αναγνωριστικά’: Αριθμός ταυτότητας, όνομα, αριθμός διαβατηρίου, ... Internet κόμβοι, routers: IP address (32 bit) – χρησιμοποιούνται για την διευθυνσιοδότηση των IP datagrams “όνομα”, π.χ., ww.yahoo.com – χρησιμοποιείται από ανθρώπους Ερώτηση:αντιστοίχηση μεταξύ IP διευθύνσεων και ονομάτων;;; Domain Name System: Κατανεμημένη βάση δεδομένωνυλοποιείται ως μία ιεραρχίαπολλώνname servers Είναι ένα application-layer πρωτόκολλομε το ρόλο να διευθετήζει την επικοινωνία μεταξύ κόμβων, routers, name servers για την επίλυση (resolve)ονομάτων (διεύθυνση/όνομαμετάφραση) DNS: Domain Name System (Σύστημα Ονομάτων Περιοχής)

  46. Γιατί όχι κεντρικό DNS;;; μοναδικό σημείο αποτυχίας (single point of failure) μεγάλος όγκος κίνησης (traffic volume) μακρινή απόσταση ως την κεντρική ΒΔ & απόκριση (distant centralized database) δεν έχει καλή κλιμάκωση (low scalability) DNS υπηρεσίες Μετάφραση Hostname σε IP διεύθυνση Κατανομή φόρτου (Load distribution) Πολλαπλοίπανομοιότυποι Web servers: σύνολο IP διευθύνσεωνγια ένα όνομα DNS

  47. Κατανεμημένη, Ιεραρχική Database Root DNS Servers org DNS servers edu DNS servers com DNS servers poly.edu DNS servers umass.edu DNS servers pbs.org DNS servers yahoo.com DNS servers amazon.com DNS servers Ένας Client θέλει την IP του www.amazon.com; 1η μέθοδος: • Ο Client στέλνει ένα ερώτημα (queries)έναν root server για να βρειτον com DNS server • Ο Client στέλνει ένα ερώτημα στον com DNS server για να βρειτον amazon.com DNS server • Ο Client στέλνει ένα ερώτημα στον amazon.com DNS server για να βρειτην IP address του www.amazon.com

  48. Ο τοπικός name server έρχεται σε επαφή με τον root name server root name server: έρχεται σε επαφή με τονκατάλληλο(authoritative) name server αν το όνομα που ζητείται δεν είναι γνωστό Βρίσκει την αντιστοίχηση Επιστρέφει την αντιστοίχησηστον τοπικό name server DNS: Root name servers a Verisign, Dulles, VA c Cogent, Herndon, VA (also Los Angeles) d U Maryland College Park, MD g US DoD Vienna, VA h ARL Aberdeen, MD j Verisign, ( 11 locations) k RIPE London (also Amsterdam, Frankfurt) i Autonomica, Stockholm (plus 3 other locations) m WIDE Tokyo e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 17 other locations) b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA 13 root name servers παγκοσμίως

  49. TLD και Authoritative Servers • Top-level domain (TLD) servers:υπεύθυνοιγια com, org, net, edu, etc, και όλα τα top-level domains χωρών uk, fr, ca, jp. • Network solutions maintains servers for com TLD • Educause for edu TLD • Authoritative DNS servers: DNS servers των οργανισμών, παρέχουν hostname <--> IP αντιστοιχίσειςγια τους servers του οργανισμού (π.χ., Web και mail). • Μπορεί να διατηρούνται από τον οργανισμό ή τον παροχέα υπηρεσιών

  50. Τοπικός Name Server • Δεν ανήκει απαραίτητα στην ιεραρχία • Κάθε ISP (εμπορικός ISP, εταιρία, παν/μιο) διαθέτει ένα τοπικό DNS • Αποκαλείται και “default name server” • Όταν ένας κόμβος εκτελεί ένα DNS ερώτημα, το ερώτημα στέλνεται στον τοπικό DNS server • Λειτουργεί ως ενδιάμεσος (proxy), προωθεί το ερώτημα στην ιεραρχία

More Related