Εισαγωγή στα Δίκτυα Επικοινωνιακών και Υπολογιστικών Συστημάτων 1
Δίκτυα Υπολογιστών & Internet Στόχος παρουσίασης: σύνοψη, αίσθηση της διασύνδεσης (networking) Περισσότερο βάθος, λεπτομέρεια στην συνέχεια του μαθήματος Προσέγγιση: περιγραφική Χρήση του Internet σαν παράδειγμα Περιεχόμενα: Τι είναι Internet? Τι είναι πρωτόκολλο (protocol)? Άκρη δικτύου (network edge) τερματική συσκευή (end devices) Εσωτερικό δικτύου (network core) circuit, packet, message switching Δίκτυα πρόσβασης (access network) & φυσικό μέσο Επίδοση: απώλεια (loss), καθυστέρηση (delay) Στρώματα, πρωτόκολλα και μοντέλα υπηρεσιών Internet backbones, NAPs, ISPs Σύγχρονες Κατευθύνσεις 2
Τι είναι Internet Internet: network of networks loosely hierarchical: δίκτυα εταιρειών, δίκτυα πρόσβασης, τοπικοί ISPs (Internet Service Providers), regional ISPs Εκτομμύρια διασυνδεδεμένων υπολογιστικών συσκευών: hosts, end-systems pc s workstations, servers PDA s τηλεφωνικές συσκευές, τοστιέρες τρέχουν network applications communication links από διάφορα φυσικά μέσα: fiber, copper, radio, satellite routers: προωθούν πακέτα δεδομένων σε ομάδες μέσω του δικτύου router company network server local ISP workstation mobile To backbone provider regional ISP 3
Τι είναι Internet protocols ελέγχουν αποστολή και λήψη πληροφορίας (messages) στο Internet e.g., TCP, IP, HTTP, FTP, PPP Internet standards IETF, Internet Engineering Task Force, όπου τα περισσότερα standards που χρησιμοποιούνται στο σημερινό Internet έχουν συζητηθεί και δημιουργηθεί. IETF είναι ένα forum ανοιχτό σε κάθε ιδιώτη που ενδιαφέρεται. Τα standards που δημιουργεί περιέχονται σε αρχεία γνωστά ως RFC, Request for comments. Σημαντικές ιστοσελίδες: Internet Engineering Task Force (IETF) www.ietf.org Internet Society www.isoc.org The World Wide Web Consortium (W3C) www.w3.org/consortium 4
Τι είναι Internet: άποψη υπηρεσίας (service) communication infrastructure επιτρέπει κατανεμημένες εφαρμογές: WWW, email, games, e- commerce, database, voting, communication services που παρέχονται: connectionless connection-oriented Η διχοτόμηση σε connectionless/connection-oriented υπηρεσίες βρίσκει εφαρμογή σε διαφορετικά επίπεδα επικοινωνίας 5
Τι είναι πρωτόκολλο Τα πρωτόκολλα προσδιορίζουν το σχήμα, είδος μηνυμάτων αποστολής και λήψης μεταξύ δικτυακών οντοτήτων, και ενέργειες κατά την αποστολή και λήψη μηνυμάτων Ανθρώπινα πρωτόκολλα: Τι ώρα είναι? Έχω μια ερώτηση Κτλ κτλ συγκεκριμένα messages στέλνονται συγκεκριμένες ενέργειες γίνονται κατά την λήψη των μηνυμάτων, ή άλλων γεγονότων Πρωτόκολλα δικτύων: Μεταξύ μηχανών παρά ανθρώπων Κάθε επικοινωνία στο Internet κυριαρχείται από protocols Μια σημαντική παράμετρος είναι ότι τα πρωτόκολλα επικοινωνίας είναι διαμορφωμένα σε στρώματα (layers). Κάθε στρώμα χρησιμοποιεί τις υπηρεσίες που παρέχονται από τα πιο κάτω στρώματα και παρέχει υπηρεσίες σε ανώτερα στρώματα. 6
Τι είναι πρωτόκολλο Ανθρώπινο και δικτυακό πρωτόκολλο: Γειά Γειά Έχεις ώρα? 2:00 Χρόνος TCP connection req. TCP connection reply. Get http://gaia.cs.umass.edu/index.htm <file> 7
Δικτυακή Δομή: Μια κοντινότερη ματιά network edge: εφαρμογές και hosts network core: routers network of networks access networks, physical media: σύνδεσμοι επικοινωνίας 8
network edge: end systems (hosts): Τρέχουν προγράμματα εφαρμογών WWW, email στις edge of network client/server model client εισάγει requests και παίρνει service από τον server WWW client (browser)/ server; email client/server peer-peer model: Συμμετρική αλληλεπίδραση των host e.g.: teleconferencing 9
Network edge: connection-oriented υπηρεσία Στόχος: μεταφορά δεδομένων μεταξύ end sys. handshaking: setup (προετοιμασία) μεταφοράς δεδομένων πριν την έναρξη Hello, hello back σε ανθρώπινο protocol set up state σε δύο hosts που επικοινωνούν TCP - Transmission Control Protocol connection-oriented Υπηρεσία του Internet TCP service [RFC 793] αξιόπιστο, σε-σειρά byte-stream μεταφορά δεδομένων απώλεια: acknowledgements και retransmissions Έλεγχος ροής (flow control): Ο αποστολέας δεν θα πνίξει με μηνύματα τον παραλήπτη Έλεγχος συμφόρησης (congestion control): Ο αποστολέας επιβραδύνει τον ρυθμό αποστολής όταν το δίκτυο είναι κορεσμένο 10
Network edge: connectionless υπηρεσία Στόχος: μεταφορά δεδομένων μεταξύ end systems Όπως και πριν! UDP - User Datagram Protocol [RFC 768]: connectionless υπηρεσία στο Internet Αναξιόπιστη μεταφορά δεδομένων Δεν υπάρχει flow control Δεν υπάρχει congestion control Εφαρμογές χρήσης TCP: HTTP (WWW), FTP (file transfer), Telnet (remote login), SMTP (email) Εφαρμογές χρήσης UDP: streaming media, teleconferencing, Internet telephony 11
Network Core Μεταγωγή κυκλώματος μεταγωγή πακέτου (Circuit Switching vs Packet Switching) Μια βασική ερώτηση: Πως μεταφέρονται τα δεδομένα στο δίκτυο? circuit switching: αφιερωμένο κύκλωμα για κάθε κλήση: τηλεφωνικό δίκτυο Packet switching: δεδομένα στέλνονται μέσω του δικτύου σε τμήματα Σε circuit switching, ένα channel συγκεκριμένου bid-rate παρέχεται μεταξύ των end-points. Σε packet switching, τα πακέτα ανταλλάσσονται όταν χρειάζεται. Σε circuit switching, η ταυτότητα των μεταφερόμενων δεδομένων παρέχεται από το time slot ή την δοσμένη frequency. Σε packet switching, η ταυτότητα των δεδομένων πρέπει να προσδιορίζεται από μια επικεφαλίδα (header). Circuit switching πρέπει να είναι connection-oriented. Packet switching μπορεί να είναι connectionless (datagram), ή connectionoriented (virtual circuit). Σήμερα μεγάλο τμήμα της επικοινωνίας Η/Υ βασίζεται σε packet switching 12
Network Core - Circuit Switching Circuit Switching call setup (και tear-down) απαιτείται Εύρος του συνδέσμου σε τμήματα μέσω frequency division ή time division Εύρος και πόροι στους μεταγωγούς δεσμεύονται για όλη την διάρκεια της κλήσης Αφιερωμένοι πόροι: no sharing Εγγυημένη επίδοση Το τηλεφωνικό δίκτυο ένα τυπικό παράδειγμα 13
Network Core: Packet Switching Κάθε end-end data stream κόβεται σε πακέτα (packets) Χρήστης A, B πακέτα μοιράζονται πόρους δικτύου Κάθε πακέτο μεταδίδεται με το εύρος ζώνης του συνδέσμου Πόροι χρησιμοποιούνται εφόσον απαιτείται Διαμοιρασμός Εύρους Αφιερωμένη παροχή Resource reservation Ανταγωνισμός για πόρους (resource contention): Η συνολική αίτηση για πόρους μπορεί να ξεπερνά την διαθέσιμη ποσότητα congestion: πακέτα σε αναμονή για την χρήση του συνδέσμου store and forward: πακέτα κινούνται ανά hop Μετάδοση μέσω συνδέσμου Αναμονή σειράς στον επόμενο σύνδεσμο 14
Network Core: Packet Switching A 10 Mbs Ethernet Στατιστική πολυπλεξία C B Ουρά αναμονής πακέτων για το output link 1.5 Mbs 45 Mbs D E 15
Network Core: Packet Switching Message και Packet-switching: store and forward συμπεριφορά Message switching: Μεγαλύτερη stored-and-forward καθυστέρηση; Λάθος σε ένα μόνο bit καταστρέφει την μετάδοση όλου του message 16
Packet switching vs circuit switching Packet switching επιτρέπει σε περισσότερους χρήστες πρόσβαση στο δίκτυο! 1 Mbit link Κάθε χρήστης: 100Kbps όταν είναι ενεργός ενεργός 10% του χρόνου circuit-switching: N Χρήστες 10 χρήστες packet switching: Με 35 χρήστες, η πιθανότητα να έχουμε πάνω από 10 χρήστες ενεργούς ταυτόχρονα είναι μικρότερη από.004. Όταν αυτό συμβεί τα επιπλέον πακέτα μπαίνουν σε αναμονή και καθυστερούν χρονικά. 1 Mbps link 17
Packet switching vs circuit switching Είναι η μεταγωγή πακέτου ο νικητής? Πολύ καλή λύση για δεδομένα που έρχονται σε ομάδες Διαμοιρασμός πόρων Χωρίς call setup Σε περίπτωση συμφόρησης: χρονοκαθυστέρηση και απώλειες πακέτων Πρωτόκολλα απαραίτητα για αξιόπιστη μεταφορά δεδομένων, έλεγχος συμφόρησης Q: Πως μπορεί να δοθεί συμπεριφορά κυκλώματος (circuit)? Εγγυήσεις εύρους ζώνης απαραίτητες για εφαρμογές audio/video 18
Packet-switched Δίκτυα: Δρομολόγηση Στόχος: μεταφορά πακέτων μέσω δρομολογητών από πηγή σε προορισμό Θα συζητηθούν αλγόριθμοι επιλογής δρόμων datagram network: Διεύθυνση προορισμού προσδιορίζει επόμενο hop Οι διαδρομές μπορεί να αλλάξουν κατά την περίοδο μεταφοράς των δεδομένων virtual circuit network: Κάθε πακέτο μεταφέρει ένα tag (virtual circuit ID) που προσδιορίζει το επόμενο hop Συγκεκριμένος δρόμος προσδιορίζεται κατά το call setup time, και δεν αλλάζει Δρομολογητές διατηρούν καταστάσεις για κάθε κλήση 19
Core Network - Σύνοψη 20
Δίκτυα Πρόσβασης και φυσικά μέσα Q: Πως συνδέονται end systems με έναν edge router? Οικιακά δίκτυα πρόσβασης Ιδρύματα με δίκτυα πρόσβασης (σχολείο, εταιρεία) Κινητό δίκτυο πρόσβασης Προσοχή: Εύρος (bits per second) δικτύων πρόσβασης? Αφιερωμένοι ή διαμοιρασμένοι πόροι? 21
Πρόσβαση από το σπίτι Point-to-point Dialup μέσω modem έως 56Kbps άμεση πρόσβασης σε δρομολογητή ISDN: integrated services digital network: 128Kbps all-digital σύνδεση σε δρομολογητή ADSL: asymmetric digital subscriber line έως 1 Mbps home-to-router έως 8 Mbps router-to-home Cable Modem HFC: hybrid fiber coax ασύμμετρη: έως 10Mbps upstream, 1 Mbps downstream Δίκτυο καλωδιακής (cable) και οπτικής ίνας συνδέει σπίτια με ISP δρομολογητή Διαμοιρασμένη πρόσβαση στον δρομολογητή για όλο το σπίτι Θέματα: συμφόρηση, διαστασιοποίηση 22
Πρόσβαση από Ίδρυμα: local area networks Εταιρεία/Πανεπιστήμιο local area network (LAN) συνδέουν end system σε edge δρομολογητή Ethernet: Διαμοιρασμένο ή αφιερωμένο συνδέει end system και router 10 Mbs, 100Mbps, Gigabit Ethernet ανάπτυξη: ιδρύματα, οικιακά LANs 23
Ασύρματα δίκτυα πρόσβασης κοινά ασύρματα δίκτυα πρόσβασης συνδέουν end system σε δρομολογητές wireless LANs: Ραδιοφάσμα αντικαθιστά το καλώδιο wider-area wireless access Όπως ασύρματη πρόσβαση σε ISP δρομολογητή μέσω δικτύου κινητής τηλεφωνίας router Σταθμός βάσης κινητοί hosts 24
Φυσικά μέσα Φυσικός σύνδεσμος: μεταδιδόμενα bit δεδομένων διαδίδονται κατά μήκος του συνδέσμου Κατευθυντικά μέσα: Σήματα διαδίδονται σε στερεά μέσα όπως χαλκός, οπτική ίνα Μη κατευθυντικά μέσα: Σήματα διαδίδονται ελεύθερα, όπως ραδιο σήμα Twisted Pair (TP) Δύο μονωμένα καλώδια χαλκού Category 3: τηλεφωνικά καλώδια, 10 Mbps ethernet Category 5 TP: 100Mbps ethernet 25
Φυσικά Μέσα: coax, fiber Ομοαξονικό καλώδιο (Coaxial): καλώδιο (μεταφορέας σήματος) μέσα σε ασπίδα Baseband (50 ohm): ένα κανάλι. ~1cm πάχος, βρισκόταν σε παλιά 10 Mbs Ethernet Broadband (75 ohm): πολλαπλά κανάλια σε ένα καλώδιο, καθένα σε διαφορετική μπάντα συχνοτήτων. Παχύ και δισκαμπτό, βρίσκεται σε καλωδιακή τηλεόραση. Δύο κατευθύνσεων Οπτική ίνα: Ίνα από γυαλί που μεταφέρει παλμούς φωτός Διαδικασίες υψηλών ταχυτήτων: 100Mbps Ethernet Μετάδοση μεγάλης ταχύτητας σε point-to-point (e.g., 10 Gps) Χαμηλή συχνότητα σφάλματος 26
Φυσικά μέσα: ράδιο Ο φορέας του σήματος είναι το ηλεκτρομαγνητικό φάσμα Δεν υπάρχει καλώδιο Δύο κατευθύνσεων Περιβάλλον διάδοσης επηρεάζει: ανάκλαση παρεμπόδιση από αντικείμενα παρεμβολή Τύποι Ραδιο-συνδέσμων: microwave e.g. Κανάλια 45 Mbps LAN (e.g., wavelan) 2Mbps, 11Mbps wide-area (e.g., cellular) e.g. CDPD, 10 s Kbps satellite κανάλια 50Mbps (ή πολλαπλάσια μικρότερα) 270 Msec end-end delay geosynchronous vs LEOS 27
Καθυστέρηση και απώλεια σε δίκτυα packetswitched Πακέτα υπόκεινται σε καθυστέρηση στην end-to-end διαδρομή Τέσσερις πηγές καθυστέρησης σε κάθε hop A transmission Επεξεργασία κόμβου (nodal processing): Έλεγχος bit errors Προσδιορισμός συνδέσμου εξόδου Αναμονή σε ουρά (queuing) propagation Χρόνος αναμονής σε σύνδεσμο εξόδου για μετάδοση Εξαρτάται από μέγεθος συμφόρησης στον δρομολογητή B nodal processing queuing 28
Καθυστέρηση σε packet-switched δίκτυα Καθυστέρηση μετάδοσης : R=εύρος ζώνης συνδέσμου (bps) L=μήκος πακέτου (bits) Χρόνος για αποστολή bits στο σύνδεσμο = L/R Καθυστέρηση διάδοσης: d = μήκος φυσικού συνδέσμου s = ταχύτητα διάδοσης στο μέσο (~2x10 8 m/sec) Καθυστέρηση διάδοσης = d/s A transmission Προσοχή: s και R διαφορετικές ποσότητες! propagation B nodal processing queueing 29
Καθυστέρηση αναμονής (Queueing delay) R= εύρος ζώνης συνδέσμου (bps) L=μήκος πακέτου (bits) a=μέσος ρυθμός άφιξης πακέτων Ποσοστό κίνησης = La/R La/R ~ 0: μικρή καθυστέρηση λόγω αναμονής La/R -> 1: η καθυστέρηση μεγαλώνει La/R > 1: υπάρχουν περισσότερες αφίξεις απ ότι μπορούν να εξυπηρετηθούν, μέση καθυστέρηση άπειρη! 30
Στρώματα Πρωτοκόλλου Τα δίκτυα είναι σύνθετα! Πολλά μέρη: hosts routers σύνδεσμοι από διαφορετικά μέσα εφαρμογές πρωτόκολλα υλικό και λογισμικό Ερώτημα: Υπάρχει τρόπος να οργανωθεί δομικά ένα δίκτυο? Η διαστρωμάτωση σπάει ένα σύνθετο πρόβλημα σε μικρότερα τμήματα με ξεκάθαρες σχέσεις μεταξύ τους Συγκεκριμένη δομή επιτρέπει τον προσδιορισμό των σχέσεων μεταξύ σύνθετων τμημάτων ενός συστήματος Παρέχει ένα μοντέλο αναφοράς για συζήτηση Ο διαχωρισμός διευκολύνει την συντήρηση και αναβάθμιση ενός συστήματος Επιτρέπει αλλαγές στην υλοποίηση ενός στρώματος χωρίς να επηρεάζεται το υπόλοιπο σύστημα 31
Διαστρωμάτωση πρωτοκόλλου και δεδομένα Κάθε στρώμα: περιέχει οντότητες που υλοποιούν ενέργειες του στρώματος σε κάθε κόμβο, όπως: Error Control, Flow Control, Segmentation and Reassembly, Multiplexing, και Connection Setups. Οι οντότητες πραγματοποιούν ενέργειες και ανταλλάσσουν μηνύματα γνωστά ως Protocol Data Units (PDU). Οντότητες του στρώματος n θα ανταλλάξουν n-pdu χρησιμοποιώντας την υπηρεσία του στρώματος n-1. Κάθε στρώμα παίρνει δεδομένα από πιο πάνω Προσθέτει επικεφαλίδα με πληροφορίες του στρώματος δημιουργώντας νέα μονάδα δεδομένων Περνάει τα νέα δεδομένα σε χαμηλότερο στρώμα H 2 H 4 H 3 H 4 H 3 H 4 M M M M source Layer 5 Layer 4 Layer 3 Layer 2 Layer 1 destination Layer 5 Layer 4 Layer 3 Layer 2 Layer 1 H 2 H 4 H 3 H 4 H 3 H 4 M M M M 5-PDU 4-PDU 3-PDU 2-PDU 32
Internet στοίβα πρωτοκόλλου application: υποστηρίζει δικτυακές εφαρμογές ftp, smtp, http transport: host-host μετάδοση δεδομένων tcp, udp network: δρομολόγηση datagrams από την πηγή στον προορισμό ip, routing protocols link: μετάδοση δεδομένων μεταξύ γειτονικών δικτυακών στοιχείων ppp, ethernet physical: bits στο σύρμα, σχήματα διαμόρφωσης, ηλεκτρικές και φυσικές παράμετροι, κτλ. Οι δρομολογητές στο δίκτυο φτάνουν μέχρι και το Network Layer Host application transport network link physical Router 33
Παράδειγμα Διαστρωμάτωσης: Λογική επικοινωνία E.g.: transport Πάρε δεδομένα από εφαρμογή Πρόσθεσε διεύθυνση, reliability check πληροφορία για σχηματισμό datagram Στείλε το datagram στον προορισμό χρησιμοποιώντας υπηρεσίες από το Νetwork Layer Αναμονή για επιβεβαίωση από προορισμό data application transport network link physical transport application transport network link physical data ack application transport network link physical network link physical data application transport network link physical 34
Παράδειγμα Διαστρωμάτωσης: Φυσική επικοινωνία data application transport network link physical application transport network link physical application transport network link physical network link physical data application transport network link physical 35
Δομή Internet: Δίκτυο από Δίκτυα Γενικά παρουσιάζει ιεραρχική δομή national/international backbone providers (NBPs) e.g. BBN/GTE, Sprint, AT&T, IBM, UUNet Διασύνδεση ιδιωτικά ή σε δημόσια Network Access Point (NAPs) regional ISPs Σύνδεση σε NBPs local ISP, εταιρία Σύνδεση σε regional ISPs NAP regional ISP local ISP NBP B NBP A local ISP regional ISP NAP 36
National Backbone Παροχέας e.g. BBN/GTE US backbone δίκτυο 37
Dual Band WLAN Introduction 1-38
Modern Complex Environment Introduction 1-39
Cloud Computing Introduction 1-40
Next Generation Internet Introduction 1-41