Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

Σχετικά έγγραφα
ΚΕΦΑΛΑΙΟ 4: Δικτύωση και Διαδίκτυο

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

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

Ethernet Ethernet ΙΕΕΕ CSMA/CD

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

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

Γιατί υπάρχουν δίκτυα; Πολυπλεξία. 4.1 Κατηγορίες δικτύων. ΚΕΦΑΛΑΙΟ 4: ικτύωση και ιαδίκτυο

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δίκτυα Υπολογιστών

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7]

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

J. Glenn Brookshear. Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Εισαγωγή στο διαδίκτυο

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

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

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

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

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

Κεφάλαιο 3.3: Δίκτυα. Επιστήμη ΗΥ Κεφ. 3.3 Καραμαούνας Πολύκαρπος

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

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

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

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

Network Address Translation (NAT)

ΕΠΛ 012. Δίκτυα Τπολογιστών & Διαδίκτυο

Αριστοµένης Μακρής Εργαστήρια Η/Υ

Επαναληπτικές Ασκήσεις Μαθήματος

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

Παραδείγµατα δικτυακών τεχνολογιών. Ethernet Internet ATM

Εισαγωγή στην επιστήμη των υπολογιστών. Κεφάλαιο 4 ο Δικτύωση και Διαδίκτυο

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

Πληροφορική Ι. Μάθημα 7 ο Δίκτυα Υπολογιστών. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ.

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

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

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

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

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

Μάθημα 6: Αρχιτεκτονική TCP/IP

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

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

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

Κάντε κλικ για έναρξη

Κεφάλαιο 7.3. Πρωτόκολλο TCP

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Εισαγωγή. Κ. Βασιλάκης

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

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο

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

Κεφάλαιο 12. Επικοινωνίες-Δίκτυα-Διαδίκτυο. Εξαιρούνται οι παράγραφοι:

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

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας. Μοντέλο TCP/IP. Ενότητα E. Συστήµατα Επικοινωνίας

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

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Εισαγωγή. Κ. Βασιλάκης

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

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

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος

Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής Συστήµατα Επικοινωνίας. Μοντέλο TCP/IP. Ενότητα E. Πόσοι εµπλέκονται σε ένα Σύστηµα Επικοινωνίας

2 η Σειρά Ασκήσεων Data Link Layer

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ

Πρωτόκολλα Διαδικτύου Μέρος 2ο. Επικοινωνίες Δεδομένων Μάθημα 3 ο

ίκτυα ίκτυο υπολογιστών: Ένα σύνολο από υπολογιστικές συσκευές που συνδέονται µεταξύ τους για σκοπούς επικοινωνίας και χρήσης πόρων. Συνήθως, οι συσκε

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. ίκτυα Υπολογιστών Ι. To Μοντέλο OSI. Αναπλ. Καθηγ. Π. εμέστιχας

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

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

ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη 16 Νοεμβρίου 2013

TEI Ιονίων Νήσων Τμήμα Τεχνολογίας Τροφίμων Πληροφορική Σημειώσεις Τεύχος 4 Επικοινωνίες και Δίκτυα. Μάκης Σταματελάτος

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

Κεφάλαιο 6ο ΕΠΙΠΕΔΟ ΕΦΑΡΜΟΓΗΣ. Εισαγωγή

Υπόστρωμα Ελέγχου Πρόσβασης Μέσου. Medium Access Control Sub-layer.

Κεφάλαιο > Ε Π Α Ν Α Λ Η Ψ Η Επικοινωνιακό Υποδίκτυο / TCP / UDP. Σελ

α. Το μέγιστο μήκος δεδομένων του ωφέλιμου φορτίου του πλαισίου Ethernet είναι 1500 οκτάδες. ΣΩΣΤΟ

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 5ο ΚΕΦΑΛΑΙΟ

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

DNS. Όλες οι άλλες υπηρεσίες του Διαδικτύου, (WWW και ) χρησιμοποιούν το DNS

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

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

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Νέες Επικοινωνιακές Τεχνολογίες

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

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

7.2.2 Σχέση OSI και TCP/IP

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

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

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙ ΕΣ

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

ΚΕΦΑΛΑΙΟ 6. Δίκτυα υπολογιστών και το Διαδίκτυο 1.1

Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 7 : Δίκτυα Υπολογιστών. Δρ. Γκόγκος Χρήστος

Ενότητα 3. Στρώµα Ζεύξης: Αρχές Λειτουργίας & Το Υπόδειγµα του Ethernet

AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ. Δίκτυα Μετάδοσης Δεδομένων. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές

Τηλεπικοινωνίες, Διαδίκτυο και ασύρματη τεχνολογία

ίκτυα - Internet Μάθηµα 3ο Ενότητα Β: Το Πρότυπο ΤCP/IP Eισαγωγή - Επικοινωνία µεταξύ δύο Υπολογιστών Παρασκευή 10 NOE 2006 ιευθύνσεις

ΜΑΘΗΜΑ 4 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

Επίπεδο Μεταφοράς. (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών Τμήμα Μηχανικών Η/Υ και Πληροφορικής

Transcript:

Κεφάλαιο 4: Δικτύωση και Διαδίκτυο 4.1 Βασικές αρχές δικτύων 4.2 Τo Διαδίκτυο 4.3 Ο Παγκόσμιος Ιστός 4.4 Διαδικτυακά πρωτόκολλα 4.5 Ασφάλεια Οι διαφάνειες βασίζονται σε μεγάλο βαθμό σε αυτές που συνοδεύονται με το προτεινόμενο σύγγραμμα, καθώς και στις διαφάνειες προηγούμενων ετών του κ. Κουρκουμπέτη. 1

Κατηγορίες Δικτύων Δίκτυα = διασυνδεδεμένα συστήματα υπολογιστών Εμβέλεια: Τοπικά δίκτυα (Local Area Network, LAN), κλίμακα κτιρίου Μητροπολιτικά δίκτυα (Metropolitan Area Network, MAN), κλίμακα μιας κοινότητας (γειτονιάς) Δίκτυα ευρείας περιοχής (Wide Area Network, WAN), κλίμακα πόλης Ιδιοκτησία: Κλειστά ή ιδιόκτητα (closed, proprietary) και ανοιχτά (open) Ίντερνετ: ανοικτό Τοπολογία (διευθέτηση) κόμβων Διαύλου (bus), Π.χ. Ethernet Αστέρα (star) π.χ Ασύρματα δίκτυα με κεντρικό σημείο πρόσβασης 2

Τοπολογίες Δικτύων Δακτύλιος Δίαυλος Αστέρας Άτακτη τοπολογία Στην τοπολογία αστέρα, ένας υπολογιστής μπορεί να επικοινωνήσει με έναν άλλον μόνο μέσω του κεντρικού (hub) Στην τοπολογία διαύλου, οι υπολογιστές μπορούν και επικοινωνούν απευθείας μέσω του διαύλου 3

Τοπολογίες δικτύων (2) Σύνδεσμοι = ενσύρματοι, ασύρματοι Ethernet 4

Τοπολογίες δικτύων (3) Ethernet, WiFi Wireless mesh networks όχι απλός υπολογιστής αλλά δικτυακός κόμβος (όχι απαραίτητα κοινός υπολογιστής αλλά εξειδικευμένη δικτυακή συσκευή) 5

Γράφος δικτύου (network graph) Κόμβος (node) ή κορυφή (vertex) Ζεύξη (link) ή ακμή (edge) Δυο κόμβοι συνδέονται με μια ζεύξη αν μπορούν απευθείας να μεταδώσουν πληροφορία ο ένας στον άλλον 6

Πρωτόκολλα δικτύων Δίκτυο = κατανεμημένο σύστημα Όχι κεντρικός έλεγχος Χρειάζονται κανόνες σύμφωνα με τους οποίους θα λειτουργεί το δίκτυο Π.χ. Πρωτόκολλο που διευθετεί το πότε θα μεταδίδει ένας κόμβος πληροφορία Πακέτο = ομάδα από bits πληροφορίας που μεταδίδονται όλα μαζί Πρωτόκολλο: Κανόνες που πρέπει να ακολουθούν οι συσκευές για να λειτουργούν αρμονικά και να προσφέρουν μια συγκεκριμένη υπηρεσία (σαν ομάδα) Πως ερμηνεύουν εισερχόμενα μηνύματα (δομή + περιεχόμενο μηνυμάτων) Πως αντιδρούν σε αυτά (τι να υπολογίσουν) Τι μηνύματα να στείλουν στους γείτονες 7

Πρωτόκολλα Πολλαπλής Πρόσβασης (Multiple Access Protocols) Δεδομένα προβλήματος: k PCs συνδέονται εν- ή ασύρματα Θέλουμε k PCs να στέλνουν πακέτα πληροφορίας μεταξύ τους, π.χ. ανά 2 Δεν ξέρουμε πότε θέλει κάποιο PC να μεταδώσει Πολλαπλή Πρόσβαση με ανίχνευση φέροντος (Carrier Sense Multiple Access, CSMA) κάθε τερματικό έχει την δική του διεύθυνση όλα ακούνε και στέλνουνε στο ίδιο κανάλι (ενσύρματο ή ασύρματο), carrier Carrier Sense CS: ακούνε όλοι το κανάλι (carrier) και καταλαβαίνουν αν κάποιος άλλος εκπέμπει (ανίχνευση σήματος του πομπού) Multiple Access MA: οποιοσδήποτε κόμβος αποφασίζει να μεταδώσει, αρκεί το κανάλι να είναι ελεύθερο (τυχαία πολλαπλή πρόσβαση, αντί για κεντρικό έλεγχο) 8

Πρωτόκολλα Πολλαπλής Πρόσβασης (Multiple Access Protocols) (2) Αντιμετώπιση συγκρούσεων (ταυτόχρονων μεταδόσεων από άλλους): Τις καταλαβαίνω εγκαίρως: σταματάω να εκπέμπω και ξαναστέλνω σε τυχαίο χρόνο (collision detection,cd) περίπτωση ενσύρματου Ethernet: στέλνω και ακούω ταυτόχρονα, καταλαβαίνω αμέσως σύγκρουση Δεν τις καταλαβαίνω εγκαίρως ή και καθόλου: προσπαθώ με έξυπνο τρόπο να τις αποφύγω όσο γίνεται, ζητώ επιβεβαίωση από παραλήπτη (collision avoidance, CA) περίπτωση ασύρματου Ethernet, δεν μπορώ να ακούω όταν στέλνω 9

Πρωτόκολλο CSMA/CD Carrier Sense Multiple Access / Collision Detection (CSMA/CD) Χρησιμοποιείται στο ενσύρματο Ethernet Πριν μεταδώσει, ένας κόμβος Α ακούει τον δίαυλο Αν κανείς δεν μεταδίδει, τότε μεταδίδει ο Α (συνεχίζοντας να ακούει το δίαυλο) Αν κάποιος κόμβος Β αρχίζει μετάδοση ενώ μεταδίδει ο Α, και οι δυο σταματούν για ένα τυχαίο χρονικό διάστημα (διαφορετικό ο καθένας) πριν προσπαθήσουν και πάλι 10

Το κλασικό (ενσύρματο) Ethernet Ethernet (1970): Ενσύρματος δίαυλος Πρωτόκολλο CSMA/CD (Carrier Sense Multiple Access with Collision Detection) Κάθε συσκευή ακούει συνέχεια τον δίαυλο (κανάλι) Μόλις είναι ελεύθερος στέλνει (όταν έχει πακέτο να στείλει) Εάν υπάρχει σύγκρουση (δηλ. κάποιος άλλος μεταδίδει ταυτόχρονα), το καταλαβαίνει έγκαιρα και κάνει back- off (φάση congestion avoidance) Back- off: διαλέγει ένα τυχαίο χρόνο T να περιμένει και ξαναστέλνει Βασική υπόθεση: κάθε συσκευή μπορεί να ακούει και να μεταδίδει ταυτόχρονα à ανιχνεύει έγκαιρα τυχόν σύγκρουση 11

Ασύρματο Ethernet (WiFi) Ασύρματα τερματικά επικοινωνούν με ένα σταθμό βάσης Carrier Sense Multiple Access Collision Avoidance (CSMA/CA) Χρησιμοποιείται στο WiFi (ασύρματο Ethernet) Πρόβλημα κρυμμένου τερματικού (hidden terminal problem) 12

Ασύρματο Ethernet (WiFi) (2) Πρόβληματα: (α) ασύρματη κάρτα δεν μπορεί να ακούει όταν στέλνει (half- duplex) Δεν μπορεί να ανιχνεύσει σύγκρουση (π.χ. Ο Γ και ο Β) Λύση: πρωτόκολλο CSMA/CA (Collision Avoidance) Λογική: ελαχιστοποίησε συγκρούσεις Πριν μεταδώσεις ξεκίνησε ένα (τυχαίο) μετρητή με χρόνο Τ που μετράει χρόνο μόνο όσο το κανάλι είναι ελεύθερο (μετράει αντίστροφα) Όταν τελειώσει το μέτρημα, άρχισε να μεταδίδεις Περίμενε επιβεβαίωση (ACK). Εκδοχή 1: WiFi χωρίς RTS/CTS: Εάν δε λάβεις επιβεβαίωση (σημαίνει Backoff - > DATA - > ACK ότι υπάρχει σύγκρουση), επανέλαβε το ίδιο με μετρητή 2Τ 13

Ασύρματο Ethernet (WiFi) (3) Λόγοι για τους οποίους ένας κόμβος (Α) δεν μπορεί να ανιχνεύσει σύγκρουση (με έναν κόμβο Β) Ο Β βρίσκεται εκτός εμβέλειας του Α και ο Α δεν τον ακούει Το σήμα του Β είναι αρκετά ασθενέστερο από το σήμα που μεταδίδει ο Α Ο Α δεν μπορεί να λαμβάνει και να μεταδίδει ταυτόχρονα (λόγω περιορισμών του hardware της ασύρματης κάρτας) Σημείωση: Στον αλγόριθμο που περιγράψαμε παραπάνω, η κάθε πηγή μεταδίδει την πληροφορία πακέτο- προς- πακέτο (ένα πακέτο τη φορά) Το πακέτο περιέχει το ID της πηγής και το ID του προορισμού Αν λάβει το πακέτο ο προορισμός, στέλνει ACK Τότε, η πηγή μεταδίδει το επόμενο πακέτο 14

Ασύρματο Ethernet (WiFi) (4) Πρόβληματα: (β) πρόβλημα κρυμμένου τερματικού Λύση : πλήρης αποφυγή συγκρούσεων μετάδοσης πακέτων Όπως στο CSMA/CA, ξεκίνησε έναν μετρητή που μετράει αντίστροφα. Όταν λήξει, αντί να στείλεις ολόκληρο πακέτο στείλε πρώτα ένα μικρό πακέτο Request to Send (RTS) (άδεια να μεταδώσεις), περίμενε πακέτο Clear to Send (CTS) από τον κόμβο προορισμού Τα RTS, CTS ουσιαστικά λένε σε όλους τους άλλους κόμβους στην εμβέλεια των Α,Β (πλην των Α,Β) να μην μεταδώσουν (κάνουν κράτηση του χώρου) CTS περιέχει το id του κόμβου προορισμού Εάν έγινε σύγκρουση (το CTS δεν λαμβάνεται), ξεκίνησε πάλι τον μετρητή με 2Τ Συγκρούσεις πιθανές πάλι, αλλά δεν έχουν μεγάλο κόστος: το μήκος του πακέτου RTS είναι πολύ μικρό Εκδοχή 2: WiFi με RTS/CTS: Backoff - > RTS- > CTS - > DATA - > ACK 15

Σύνδεση Δικτύων Επαναλήπτης (repeater): Επεκτείνει ένα δίκτυο Γέφυρα (bridge): Συνδέει δύο συμβατά δίκτυα Μεταγωγέας (switch): Συνδέει πολλά συμβατά δίκτυα Π.χ. Ενσύρματα ή ασύρματα Ο μεταγωγέας δρα σαν γέφυρα Δρομολογητής (router): Συνδέει δύο ασύμβατα δίκτυα, δημιουργώντας ένα δίκτυο δικτύων που ονομάζεται διαδίκτυο 16

Σύνδεση Δικτύων (2) Επαναλήπτης: απλά αναπαράγει το λαμβανόμενο σήμα Γέφυρα: δρα ως φίλτρο, περνάει μόνο τα σήματα που χρειάζεται (αυτά για τα οποία η πηγή και ο προορισμός βρίσκονται σε διαφορετικά τμήματα του δικτύου) 17

Παράδειγμα με Δρομολογητές Δρομολογητές που συνδέουν δύο δίκτυα WiFi και ένα δίκτυο Ethernet, διαμορφώνοντας ένα διαδίκτυο Κάθε δρομολογητής κατευθύνει τα μηνύματα μεταξύ δικτύων προς την κατάλληλη κατεύθυνση 18

Λειτουργία δρομολογητών Κάθε δρομολογητής περιέχει έναν πίνακα προώθησης (forwarding table) που έχει πληροφορίες σχετικά με την διεύθυνση προς την οποία πρέπει να προωθηθούν τα πακέτα Κάθε συσκευή / ΗΥ έχει μια μοναδική διεύθυνση Κάθε δρομολογητής στον πίνακά του έχει: μια λίστα από διευθύνσεις συσκευών (πιθανούς προορισμούς) στους οποίους προωθεί μηνύματα (αυτές οι συσκευές ανήκουν στο δίκτυό του) Μια λίστα με διευθύνσεις συσκευών και τις διευθύνσεις άλλων δρομολογητών στους οποίους πρέπει να προωθήσει μηνύματα προς αυτές τις συσκευές (αυτές δεν ανήκουν στο δίκτυό του) 19

Διασύνδεση LANs, internets Ο δρομολογητής (router) συνδέει 2 LANs σχηματίζοντας ένα διαδίκτυο (inter- network, internet). Τα αρχικά δίκτυα ενός διαδικτύου διατηρούν την ατομικότητα τους και συνεχίζουν να ενεργούν ανεξάρτητα LAN3 B LAN2 LAN6 LAN4 LAN5 data AB data AB KL L LAN1 K A Ταχυδρομεία Παγκόσμια εμβέλεια Τοπική εμβέλεια = τοπική μεταφορική εταιρία LAN 20

Δια- διεργασιακή Επικοινωνία (inter- process communication) Επικοινωνία μεταξύ διεργασιών στον ίδιο ή σε διαφορετικούς υπολογιστές Πελάτη- Διακομιστή (client- server) Ένας διακομιστής (server), πολλοί πελάτες Ο διακομιστής πρέπει να εκτελείται συνεχώς Ο πελάτης ξεκινά την επικοινωνία, κάνει αιτήσεις για εργασίες Ο διακομιστής (εξυπηρετητής) τις ικανοποιεί Παραδείγματα: Πελάτες ζητούν πρόσβαση σε αρχεία που υπάρχουν σε έναν διακομιστή Μακρινοί υπολογιστές ζητούν πρόσβαση σε έναν εκτυπωτή 21

Διαδιεργασιακή Επικοινωνία (inter- process communication) (2) Ομότιμη (peer- to- peer, P2P) Δύο διεργασίες που επικοινωνούν ως ίσες Στις ομότιμες διεργασίες, ένας υπολογιστής παίζει το ρόλο και του πελάτη και του εξυπηρετητή (παράγει αιτήσεις προς άλλους, και ικανοποιεί αιτήσεις άλλων) Παραδείγματα: Ανταλλαγή αρχείων με συστήματα peer- to- peer Αλληλοδραστικά παιχνίδια 22

Συστήματα ανταλλαγής αρχείων P2P Π.χ. Gnutella, Emule, BitTorrent, Κάθε αρχείο (π.χ. Τραγούδι, ταινία) αποτελείται από πολλά μικρότερα κομμάτια (στο BitTorrent, 512 KB) Κόμβοι (Η/Υ) που ανταλλάσσουν ένα συγκεκριμένο αρχείο αποτελούν ένα σμήνος (swarm) Κάθε κόμβος του σμήνους δίνει (κάνει upload) σε άλλους κομμάτια του αρχείου που διαθέτει, ενώ ταυτόχρονα παίρνει (κάνει download) από άλλους κομμάτια του αρχείου που δεν έχει Η διαδικασία ξεκινά από έναν κόμβο που διαθέτει όλο το αρχείο (κόμβος- σπόρος, seed) Κατασκευάζει ένα αρχείο.torrent που δίνει λεπτομέρειες και πληροφορίες για το αρχείο προς διαμοιρασμό Οι υπολοιποι κόμβοι που αρχίζουν να κατεβάζουν από αλλήλους κομμάτια του αρχείου λέγονται leechers Κάθε κόμβος x δίνει σε το πολύ 4 άλλους (σε αυτούς που κατεβάζουν από τον x με το μεγαλύτερο ρυθμό) 23

Σύγκριση μοντέλων P2P και πελάτη- διακομιστή 24

Κατανεμημένα Συστήματα Υπολογιστική Συστάδας (Cluster Computing) Πολλοί ανεξάρτητοι Η/Υ εργάζονται από κοινού για εργασίες υπολογισμού σαν να ήταν μια μεγάλη μηχανή Υπολογιστική Πλέγματος (Grid Computing) Παρόμοια λογική Μηχανές σε διαφορετικά μέρη μπορούν να συνεισφέρουν την υπολογιστική τους ισχύ (όταν αυτή δεν χρησιμοποιείται) προς εκτέλεση περίπλοκων εργασιών, π.χ. Επεξεργασία ιατρικών δεδομένων, επιστημονικών πειραματικών δεδομένων, κ.α. Υπολογιστική Νέφους (Cloud Computing) Ίδια λογική, μεγαλύτερη κλιμάκωση Π.χ. Amazon s Elastic Cloud, Apple s icloud, Google s GoogleDocs Εκτέλεση εργασιών ή αποθήκευση δεδομένων διαφανής στον χρήστη (χωρίς να ενδιαφέρεται για το σε ποιον συγκεκριμένο Η/Υ γίνεται η εργασία ή η αποθήκευση δεδομένων) 25

Το Διαδίκτυο Το Διαδίκτυο: Ένα διαδίκτυο που εκτείνεται σε όλο τον κόσμο Ο αρχικός στόχος ήταν η σύνδεση δικτύων που δεν θα επηρεαζόταν από τοπικές καταστροφές. Ξεκίνησε από την Αμερική (DARPA, Defense Advanced Research Projects Agency), 1973 Σήμερα έχει μετατραπεί από ακαδημαϊκό ερευνητικό έργο σε παγκόσμιο μέσο διασύνδεσης Είναι μια συλλογή από διασυνδεδεμένα δίκτυα μέσω δρομολογητών 26

Αρχιτεκτονική του Διαδικτύου Παροχέας Υπηρεσιών Διαδικτύου (Internet Service Provider, ISP) Επιπέδου (tier) 1: πολύ υψηλής ταχύτητας, διεθνή WANs Επιπέδου (tier) 2: περισσότερο τοπικοί ISPs πρόσβασης (access ISPs): Παρέχουν συνδεσιμότητα με το Διαδίκτυο, Π.χ. ΟΤΕΝΕΤ, ΑOL, πανεπιστήμια κλπ μέσω: Παραδοσιακής τηλεφωνίας (σύνδεση μέσω τηλεφώνου) dial- up, με modem Καλωδιακών συνδέσεων DSL (συχνότητες ως 4KHz δεσμεύονται για μετάδοση φωνής, και από εκεί και πάνω για δεδομένα) Ασύρματης σύνδεσης (Σημεία Πρόσβασης - Access Points / APs) Η περιοχή εμβέλειας ενός AP λέγεται hotspot Τερματικά συστήματα (end- systems) ή hosts Κινητά τηλέφωνα, laptops, H/Y, 27

Παραδείγματα ISPs Tier 1: Sprint, AT&T, GTT (ΗΠΑ), Deutsche Telekom (Γερμανία), Telia- Sonera (Σκανδιναβία), ΝΤΤ (Ιαπωνία), KPN (Ολλανδία) Orange (Γαλλία), British Telecom (Ην. Βασίλειο) Tier 2: Τοπικά, μικρότερης εμβέλειας ISPs Αγοράζουν πρόσβαση από τους Tier 1 28

Ιεραρχία του Διαδικτύου 29

Στην Ελλάδα... 30

Ιεραρχία του Διαδικτύου (2) Το Διαδίκτυο (Internet) είναι ένα διαδίκτυο που εκτείνεται σε ολόκληρο τον κόσμο. Ξεκίνησε από την DARPA to 1973. Σήμερα συνδέει αρκετά δισεκατομμύρια υπολογιστές. Εταιρικό διαδίκτυο (Ιντρανετ) gateway Πρόσβαση (access) 31

Διευθυνσιοδότηση στο Διαδίκτυο: διευθύνσεις IP Η διεύθυνση ΙΡ (IP address) είναι ένα σχήμα 4 bytes που χρησιμοποιείται για τον προσδιορισμό της φυσικής διεύθυνσηςμιας μοναδικής μηχανής στο Διαδίκτυο (όπως ο τηλεφωνικός αριθμός +302108203933 προσδιορίζει μια μοναδική τηλεφωνική συσκευή) Οι τελείες δεκαδικού συμβολισμού αποτελούν το πρότυπο γραφής μίας ΙΡ διεύθυνσης, χωρίζοντας τα 4 bytes της διεύθυνσης (πχ: 192.207.177.133) Το κάθε byte παίρνει τιμές από 0 ως 255 Διεύθυνση δικτύου Α: 192.207.177.1xx Περιλαμβάνει όλες τις μηχανές που έχουν IP address που αρχίζει από 192.207.177.1 (πχ 192.207.177.145) Διαδικτυακός Οργανισμός για την Εκχώρηση Ονομάτων και Αριθμών (Internet Corporation for Assigned Names and Numbers, ICANN) Εκχωρεί διευθύνσεις IP στους ISP, οι οποίοι κατόπιν εκχωρούν αυτές τις διευθύνσεις μέσα στις περιοχές τους. 32

Μνημονικά ονόματα To όνομα ενός υπολογιστή (host name) (ή της υπηρεσίας που προσφέρει) είναι ένα μνημονικό όνομα, δομημένο ιεραρχικά σε περιοχές (domains) Όνομα υπολογιστή = υπηρεσία ή παρατσούκλι υπολογιστή όνομα περιοχής (π.χ. dias.econ.aueb.gr, ftp.aueb.gr, www.in.gr) Υπηρεσία: ftp, www, smtp, imap, pop3, telnet, Το όνομα περιοχής (domain name) χαρακτηρίζει μια οντότητα όχι απαραίτητα γεωγραφικά ενιαία (εταιρία, ISP, πανεπιστήμιο, δημόσιο οργανισμό,...) Ιεραρχικό: www.cs.aueb.gr Η περιοχή ανώτατου επιπέδου (top- level domain) κατηγοριοποιεί τους ιδιοκτήτες των περιοχών: Κατά χρήστη π.χ..com = εμπορική περιοχή,.edu = πανεπιστήμιο,.gov = κυβερνητικός οργανισμός Κατά χώρα π.χ..gr = περιοχή Ελλάδας. 33

Domain Name System (DNS) Σύστημα ονομάτων περιοχών Βασικό πρόβλημα: όνομα υπολογιστή - > δικτυακή διεύθυνση (IP address) Αντίστοιχο παράδειγμα : πως βρίσκω το τηλέφωνο της υπηρεσίας ΦΠΑ της εφορίας Α ; από τον τηλεφωνικό κατάλογο! Internet: Domain Name System = σύστημα που λύνει το παραπάνω πρόβλημα DNS: κατάλογος ονομάτων περιοχών με ιεραρχική δομή Κάθε domain πρέπει να τηρεί ένα διακομιστή ονομάτων (name server) Ένας name server ενός domain γνωρίζει: Τις IP διευθύνσεις των υπολογιστών που δίνουν τις διάφορες υπηρεσίες (ftp, smtp, www, ) εντός του domain, ή έχουν κάποιο παρατσούκλι Tις IP διευθύνσεις των name server των sub- domains του (πχ ο name server του aueb.gr γνωρίζει την IP address του name server του cs.aueb.gr) 34

Λειτουργία του DNS Εύρεση του IP address για diva.eecs.berkeley.edu stanford... Root name server IP = a...... com edu gr berkeley IP = b (4) (5) (2) (3) Local name server (1) (8) Host geo... asia IP = e IP = c eec s diva IP = d (6) (7) (1): diva.eecs.berkeley.edu =? (2): berkeley.edu =? (3): berkeley.edu = b (4): eecs.berkeley.edu =? (5): eecs.berkeley.edu = c (6): diva.eecs.berkeley.edu =? (7): diva.eecs.berkeley.edu = d (8): diva.eecs.berkeley.edu = d 35

Συνοπτικά Διεύθυνση IP: σχήματα των 32 ή 128 bit που συχνά αναπαριστάνονται σε δεκαδικό συμβολισμό με τελείες 32 bit: IPv4 128 bit: IPv6 Μνημονικές διευθύνσεις: Ονόματα περιοχών (domain names) Περιοχές ανωτάτου επιπέδου (top- level domains) Σύστημα ονομάτων περιοχών(dns) Διακομιστές ονομάτων (name servers) Αναζήτηση DNS (DNS look- up) 36

Παραδοσιακές Διαδικτυακές Εφαρμογές Ηλεκτρονική αλληλογραφία (email) Ο διακομιστής αλληλογραφίας (mail server) συλλέγει την εισερχόμενη αλληλογραφία και μεταδίδει την εξερχόμενη αλληλογραφία Παραδίδει την εισερχόμενη αλληλογραφία στους πελάτες μέσω των πρωτοκόλλων POP3 ή IMAP Πρωτόκολλο Μεταφοράς Αρχείων (FTP) Κλασικό μοντέλο πελάτη- διακομιστή (client- server) Telnet και Secure Shell (SSH) Πρόσβαση σε μακρινό υπολογιστή 37

E- mail Μεταφορά μηνυμάτων μεταξύ mail servers: SMTP (Simple Mail Transfer Protocol) Πρόσβαση σε μηνύματα: POP3 (Post Office Protocol 3) ή IMAP (Internet Mail Access Protocol) POP3: τα μηνύματα σώζονται τοπικά, στον υπολογιστή του χρήστη Δεν υπάρχει πρόσβαση από διαφορετικούς clients IMAP: τα μηνύματα σώζονται στον mail server Πρόσβαση από πολλές διεπαφές web, πολλούς clients, webmail, 38

user agent (Alice) (MS Outlook) Ηλεκτρονικό ταχυδρομείο mail to jane@ntua.gr from alice@aueb.gr Αποστολή email Πρόσβαση στον mail server SMTP mail server 25 smtp.aueb.gr Port 25 Αποστολή e- mail: Simple Mail Transfer Protocol SMTP mail server 25 143 IMAP user agent (Jane) (Firefox) smtp.ntua.gr, imap.ntua.gr Port 25 port 143 Λήψη email μέσω: POP3: port 110 IMAP: port 143 http: ένας browser απαιτείται για αποστολή και λήψη (webmail, hotmail, ) 39

File Transfer Protocol ftp client control connection port 21 data connection port 20 (one per file) ftp server 21 20 τοπικό σύστημα αρχείων μακρινό σύστημα αρχείων Control: user id, list, chdir, put, get,... 40

Πιο Πρόσφατες Εφαρμογές Πρωτόκολλο Διαδικτυακής Φωνητικής Επικοινωνίας (Voice over IP, VoIP) Μοντέλο P2P, π.χ. skype Διαδικτυακό ραδιόφωνο (Internet Radio) Μονο- εκπομπή (uni- cast): μετάδοση από μια πηγή σε έναν προορισμό Πολλαπλή Μονοεκπομπή- N (N- unicast): η πηγή μεταδίδει την ίδια πληροφορία παράλληλα σε Ν προορισμούς Σημαντικός φόρτος για τον εκπομπό και για τους κόμβους κοντά του που πρέπει να προωθούν τα μηνύματα Πολυεκπομπή (multi- cast): το πρόβλημα της μετάδοσης πληροφορίας μεταφέρεται στους δρομολογητές 41

Πολυ- εκπομπή (multi- cast) Η πηγή μεταδίδει το ίδιο μήνυμα σε πολλούς προορισμούς μέσω μιας διεύθυνσης (διεύθυνση πολυ- εκπομπής) η οποία αντικατοπτρίζει τους πολλούς προορισμούς Σύνολο προορισμών στους οποίους μεταδίδεται η ίδια πληροφορία: ομάδα πολυ- εκπομπής (multi- cast group) Η πηγή μεταδίδει μόνο μια φορά! Οι δρομολογητές αναγνωρίζουν τη διεύθυνση και προωθούν το μήνυμα ανάλογα για να φτάσει στους αντίστοιχους προορισμούς Δημιουργώντας αντίγραφα της πληροφορίας που λαμβάνουν Όταν κάποιος θέλει να ενταχθεί στην ομάδα, το δηλώνει στον κοντινότερο δρομολογητή ο οποίος με τη σειρά του προωθεί το αίτημα περαιτέρω σε άλλους δρομολογητές 42

O Παγκόσμιος Ιστός Ο Παγκόσμιος Ιστός (World Wide Web) είναι ένα διαδίκτυο που διαδίδει έγγραφα υπερκειμένου (hypertext) (ή υπερμέσα, hypermedia). Δεκέμβριος 1990: Tim- Berners- Lee (πατέρας του web) Τα έγγραφα υπερκειμένου στον Παγκόσμιο Ιστό ονομάζονται και ιστοσελίδες (web pages) Οι ιστοσελίδες συνδέονται μεταξύ τους με υπερ- συνδέσμους (hyper- links) H τοποθεσία Ιστού (Web site) είναι μία συλλογή στενά συσχετισμένων ιστοσελίδων Συνήθως είναι αποθηκευμένες όλες στην ίδια διεύθυνση http://www.cs.aueb.gr/~jordan/research, /Publications, /Teaching κλπ ΗΤΜL: γλώσσα σήμανσης των εγγράφων υπερκειμένου 43

Υλοποίηση Ιστού O διακομιστής Ιστού (Web server) παρέχει πρόσβαση στα έγγραφά του σύμφωνα με τις αιτήσεις των πελατών. Ο φυλλομετρητής (browser) επιτρέπει την πρόσβαση του χρήστη στις ιστοσελίδες. Το Πρωτόκολλο Μεταφοράς Υπερκειμένου(Hyper- Text Transfer Protocol, HTTP) είναι το πρωτόκολλο επικοινωνίας που μεταφέρει έγγραφα υπερκειμένου μεταξύ φυλλομετρητή και διακομιστή Ιστού. Ο ενιαίος εντοπιστής πόρων (Uniform Resource Locator, URL) είναι η μοναδική διεύθυνση ενός εγγράφου στο δίκτυο 44

Ένα τυπικό URL 45

Μορφή εγγράφου υπερκειμένου Κωδικοποιείται ως έγγραφο κειμένου Περιέχει ετικέτες επικοινωνίας με το φυλλομετρητή Πληροφορίες που χρειάζεται ο φυλλομετρητής για να εμφανίσει σωστά την σελίδα στον χρήστη Εμφάνιση <h1> για ξεκίνημα επικεφαλίδας επιπέδου 1 <p> για ξεκίνημα νέας παραγράφου Σύνδεση με άλλα έγγραφα και περιεχόμενο <a href =... > Εισαγωγή εικόνων <img src =... > 46

Μια απλή ιστοσελίδα 47

Μια απλή ιστοσελίδα (2) 48

Μια βελτιωμένη ιστοσελίδα 49

4-50 Μια βελτιωμένη ιστοσελίδα (2)

Γράφος web (web graph) Κόμβος (node) = μια ιστοσελίδα Δυο ιστοσελίδες i και j συνδέονται με μια ζεύξη αν υπάρχει link (αναφορά) από την i στην j 51

Είναι μια μετρική σύμφωνα με την οποία η Google κατατάσσει τις ιστοσελίδες όταν τις εμφανίζει μετά από μια αναζήτηση ενός χρήστη Μια ιστοσέλίδα i έχει μεγάλη τιμή PageRank αν άλλες ιστοσελίδες j με μεγάλο PageRank «δείχνουν» στην i Όσο ψηλότερο Page Rank έχει μια σελίδα, τόσο ψηλότερα εμφανίζεται στα αποτελέσματα αναζήτησης Page Rank 52

Επεκτάσιμη Γλώσσα Σήμανσης (XML) XML (extensive Markup Language): Μια γλώσσα για κατασκευή γλωσσών σήμανσης όπως η HTML συστηματική αναπαράσταση / κωδικοποίηση άλλης μορφής πληροφορίας (πέρα από κείμενο, π.χ. φύλλα με νότες μουσικής) σαν κείμενο Υπερσύνολο της HTML Απόγονος της SGML (Standard Generalized Markup Language) H XML χρησιμοποιεί ειδικά semantic tags (σημασιολογικές ετικέτες) Π.χ. <ingredient>.. </ingredient> Ανοίγει το δρόμο για τον Παγκόσμιο Σημασιολογικό Ιστό (semantic web) Κάθε πληροφορία συνοδεύεται από την σημασία της και είναι κάτι παραπάνω από ένα σύνολο από λέξεις Πολύ πιο αποδοτική αναζήτηση (search) στο web, για περιεχόμενο με συγκεκριμένη σημασία 4-53

Πρωτόκολλα Διαδικτύου: Παράδειγμα ταχυδρόμησης πακέτου 54

Επίπεδα Λογισμικού Διαδικτύου Πρωτόκολλο Διαδικτύου: προσδιορίζει το πως μεταφέρεται η πληροφορία από μια μηχανή σε μια άλλη και μέσα στο Διαδίκτυο Οργάνωση σε επίπεδα (layers) Κάθε επίπεδο είναι μια μονάδα λογισμικού με μια συγκεκριμένη λειτουργία Επίπεδο Εφαρμογής (Application Layer): Κατασκευάζει το μήνυμα με διεύθυνση του παραλήπτη Επίπεδο Μεταφοράς (Transport Layer): Τεμαχίζει το μήνυμα σε πακέτα Επίπεδο Δικτύου (Network Layer): Χειρίζεται τη δρομολόγηση μέσω του Διαδικτύου Επίπεδο Συνδέσμου (Link Layer): Χειρίζεται την πραγματική μετάδοση των πακέτων 55

Eπίπεδα Διαδικτύου Standard του OSI (Open systems Interconnection): παλαιότερα, είχε 7 επίπεδα Τώρα έχουν απλοποιηθεί σε 5 (δείτε επόμενες διαφάνειες) Κάτω από το επίπεδο συνδέσμου, υπάρχει και το Φυσικό Επίπεδο (Physical Layer) όπου η πληροφορία μεταδίδεται και νοείται ως bits 56

Πορεία ενός μηνύματος στο Διαδίκτυο 57

Διαδικτυακά πρωτόκολλα Email, web TCP UDP data AB IP data AB KL Ethernet 58

Επίπεδο Μεταφοράς και Δικτύου Επίπεδο Μεταφοράς: χωρίζει την πληροφορία σε πακέτα και τα δίνει στο επίπεδο δικτύου Το κάθε πακέτο είναι από εδώ και πέρα ανεξάρτητα από τα άλλα Π.χ. πακέτα που έχουν τον ίδιο προορισμό μπορεί να ακολουθήσουν διαφορετικές διαδρομές προς αυτόν Επίπεδο Δικτύου: Δρομολόγηση (routing) Κάθε ενδιάμεσος δρομολογητής έχει έναν πίνακα με τις διευθύνσεις άλλων δρομολογητών Μπορεί να έχει και άλλες πληροφορίες, π.χ. πόση καθυστέρηση έχει καταμετρηθεί από αυτόν σε έναν άλλον δρομολογητή Προωθεί τα πακέτα και τελικά καθορίζει το μονοπάτι που αυτά θα ακολουθήσουν στο Διαδίκτυο 59

Δρομολόγηση Προτιμούμενη διαδρομή προς το Α: [Υ,Χ,Ζ,Α], καθυστέρηση: 15 Y 20 2 Χ 6 7 Α Ζ Προτιμούμενη διαδρομή προς το Α: [Ζ,Α], καθυστέρηση: 7 60

Διασύνδεση με δρομολογητή (1/2) Πακέτο από κόμβο με δ/νση S προς κόμβο με δ/νση D. Στο έξω μέρος μπαίνει η MAC address (s) της πηγής, και η MAC address του δρομολογητή που πρέπει να μεσολαβήσει (με MAC address r1 ως προς LAN E1) S Net Addr.:S MAC addr: s s,r1 S,D s a Ε1 data f Ethernet E1 k Ethernet E2 Πίνακας Δρομολόγησης Routing table: D, H: E3,... S: E1,... r1 Ε2 Router R Ο δρομολογητής με network address R έχει mac address r1 ως προς LAN E1 Και r3 ως προς LAN E3. Προωθεί το πακέτο που προορίζεται για D στο LAN Ε3. Βγάζει το έξω μέρος του πακέτου και βάζει το δικό του mac (r3), to mac προορισμού (d). Το Ε3 προωθεί στον D. r2 r3 r3,d S,D data Ε3 h d Ethernet E3 Κάθε συσκευή έχει MAC διεύθυνση (π.χ. d) και network διεύθυνση (D) Κάθε δρομολογητής είναι μέρος ενός ή περισσοτέρων LANs 61 H D

Διασύνδεση με δρομολογήτή (2/2) s,r1 S,D data S s f Ε1 k a Ethernet E1 w1 Router W r1 E2 Router R Routing table: D, H: W:E2,. S: E1,... w2 w4 r2 w3 r3 w3,d S,D data r2, w4 S,D data Ε3 h d Ethernet E3 H 62 D

Επίπεδο Συνδέσμου(link layer) Επίπεδο Δικτύου προσδιορίζει τον επόμενο κόμβο Επίπεδο Συνδέσμου: έχει ευθύνη για την μετάδοση του πακέτο στον αμέσως επόμενο κόμβο (δεν ενδιαφέρεται για το που θα πάει τελικά) Παράδειγμα πρωτοκόλλου σε επίπεδο συνδέσμου: CSMA/CA, CSMA/CD, Aloha Aloha: πιο απλό από CSMA/CA, CSMA/CD: όταν ένας πομπός έχει κάποιο πακέτο, απλά το μεταδίδει (δεν ακούει αν το κανάλι είναι κατειλλημένο όπως στο CSMA/CD) Το επίπεδο Συνδέσμου στον δέκτη ελέγχει αν το πακέτο έχει ληφθεί σωστά Αν όχι, ζητά επαναμετάδοση από τον πομπό 63

Σύνδεση εφαρμογών σε θύρες (ports) client C: N3.n port n N3 Εφαρμογές client- server IP address N1 N2 server A: διεύθυνση = N1.k port k server Β: διεύθυνση = N2. port m Θύρα (port): κατασκευή λογισμικού που είναι συγκεκριμένη για κάθε συγκεκριμένη εφαρμογή ή διεργασία Χρησιμεύει ως σημείο επικοινωνίας μεταξύ μακρυνών υπολογιστών και ως αναγνωριστικό για την εκτέλεση της εφαρμογής 64

Σύνδεση με εφαρμογές client 1 2 80 Πλήρης διεύθυνση διαδικασίας = [IP address, port #] Web server ports (θύρες = εσωτερικά γραμματοκιβώτια γραφείων ) server A: διεύθυνση = N1,k IP address N1 client C: N3,n port k = υποδιεύθυνση IP port n κεντρικό γραμματοκιβώτιο κτιρίου = IP address N3 IP network N2 server Β: διεύθυνση = N2,m port m Servers: ακούν σε γνωστές θύρες Clients: συνδέονται στους servers, παίρνουν πληροφορία, την παρουσιάζουν στους χρήστες Αφού ληφθεί το μήνυμα στο επίπεδο μεταφοράς στον προορισμό, αυτό το προωθεί στην κατάλληλη θύρα στο επίπεδο εφαρμογής (π.χ. Θύρα 80 για HTTP) 65

Πακέτο Πρωτοκόλλων TCP/IP Πρωτόκολλα για το Επίπεδο μεταφοράς Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Επιλογή ενός από τα 2: ανάλογη της επιλογής ταχυδρομικής υπηρεσίας Πρωτόκολλα για το Επίπεδο δικτύου Internet Protocol (IP), IPv4 και IPv6 66

Επιλογή μεταξύ TCP και UDP 67

Διαφορές TCP και UDP 1. Αποκατάσταση και προετοιμασία σύνδεσης πριν την μετάδοση TCP: πριν τη μετάδοση, το επίπεδο μεταφοράς της πηγής αποστέλλει μήνυμα προς το επίπεδο μεταφοράς του προορισμού και περιμένει επιβεβαίωση (acknowledgment, ACK) UDP: δεν κάνει κάτι αντίστοιχο, απλά μεταδίδει UDP = πρωτόκολλο χωρίς σύνδεση, connectionless 2. Έλεγχος λήψης στον προορισμό TCP: πακέτα επιβεβαίωσης (ACK) από τον προορισμό TCP: Αν ένα πακέτο δεν έχει επιβεβαιωθεί, επαναμετάδοση (retransmission) από την πηγή UDP: δεν κάνει επαναμεταδόσεις (όχι αξιόπιστο πρωτόκολλο) 68

Διαφορές TCP και UDP (2) 3. Έλεγχος Ροής (flow control) TCP: αυξομείωση ρυθμού μετάδοσης πακέτων από την πηγή προς διευκόλυνση του προορισμού Αν π.χ. ο προορισμός δεν επιβεβαιώνει τα αποσταλθέντα πακέτα, μείωσε το ρυθμό μετάδοσης πακέτων στην πηγή UDP: δεν παρέχει έλεγχο ροής Έλεγχος συμφόρησης (congestion control) TCP: αυξομείωση ρυθμού μετάδοσης πακέτων από την πηγή για αντιμετώπιση συμφόρησης κίνησης σε κάποιο σημείο μεταξύ πηγής- προορισμού Σήμα ειδοποίησης για συμφόρηση (congestion notification signal) Αν π.χ. ένας κόμβος στείλει τέτοιο μήνυμα, ή αν η μετρούμενη καθυστέρηση λήψης είναι μεγάλη, μείωσε το ρυθμό μετάδοσης πακέτων στην πηγή UDP: δεν παρέχει έλεγχο συμφόρησης UDP: αποδοτικό, αν το επίπεδο εφαρμογής μπορεί να αντιμετωπίσει τα παραπάνω ζητήματα Και αν η εφαρμογή είναι ευαίσθητη σε χρόνο (time- sensitive), δηλ. χρειάζεται να διεκπεραιωθεί γρήγορα, π.χ. DNS αναζήτηση με UDP Email (όχι ευαίσθητο σε χρόνο): με TCP 69

Σενάριο συμφόρησης κίνησης 2 πηγές, 2 προορισμοί Host A λ in : original data λ out 1 δρομολογητής, μεγάλο μέγεθος buffer Υπάρχει ένα μέγιστο ποσό πληροφορίας που μπορεί να σταλεί σε μια ζεύξη Host B unlimited shared output link buffers Χωρητικότητα ζεύξης C Καθυστέρηση στην λήψη πακέτων λόγω συμφόρησης στη ζεύξη Μέγιστη δυνατή ρυθμοαπόδοση (throughput) 70

Σενάριο συμφόρησης κίνησης (2) 1 δρομολογητής, πεπερασμένο μέγεθος buffer Χαμένα πακέτα (λόγω του ότι γεμίζει ο buffer) επαναμεταδίδονται Host A λ in : ρυθμός δεδομένων λ out Host B finite shared output link buffers 71

Έλεγχος ροής: TCP data Αλγόριθμος: στέλνε πακέτα μην στέλνεις εάν k > W διάλεγε συνέχεια το σωστό W ξαναστείλε τα χαμένα πακέτα k TCP modules IP = πακέτα δεδομένων = επιβεβαιώσεις (acknowledgements, ACKs) k = # μη επιβεβαιωμένων πακέτων W: παράθυρο TCP RTT: round- trip time R = RTT 0 1 2 3 4 W RTT χρόνος 72

Έλεγχος Ροής: TCP (2) Round- trip time : χρόνος μέχρι να πάει ένα πακέτο στον προορισμό και να επιστρέψει στην πηγή το πακέτο επιβεβαίωσης (ack) από τον προορισμό Παράθυρο TCP (TCP window) W: ο αριθμός των πακέτων που μεταδίδονται Έστω τα πακέτα αριθμούνται 0,1,2,... k = (Αριθμός τελευταίου πακέτου που στάλθηκε) (Αριθμός τελευταίου πακέτου που επιβεβαιώθηκε) Στέλνε όσο k W, μη στέλνεις αν k > W (και ξαναστείλε τα μη επιβεβαιωμένα πακέτα) Αλλάζοντας το W, αυξομειώνω το ρυθμό μετάδοσης πακέτων W μικρό: Σημαίνει ότι σταματώ την μετάδοση πιο συχνά W μεγάλο: σημαίνει ότι σταματώ τη μετάδοση λιγότερo συχνά Ρυθμός μετάδοσης πακέτων = W / (RTT) αριθμός μεταδιδόμενων πακέτων ανά μονάδα χρόνου 73

Σύνδεση εφαρμογών με TCP ή UDP πρόγραμμα A π1 π2π3 Ν S1 S2 π1 π2π3 Μ π i N, M : αριθμός θύρας : διεύθυνση Θύρες = Γραμματοκιβώτια για χρήση εφαρμογών Τύποι: TCP, UDP Έλεγχος ροής (Flow Control) : TCP : UDP N,Μ π1, π2 data Κεντρικό γραμματοκιβώτιο 74

Πρωτοκόλλο IP IP: πρωτόκολλο δρομολόγησης Προώθηση (forwarding) πακέτων στον επόμενο κόμβο Τελικά, δρομολόγησή τους (routing) στον προορισμό Πρέπει να μπορεί να αλλάζει το μονοπάτι σε περίπτωση ανάγκης Κάθε φορά που μια πηγή στέλνει ένα πακέτο, βάζει σε αυτό: Διεύθυνση αποστολέα και προορισμού Δεδομένα Μετρητής αλμάτων (hop count) ή χρόνος ζωής (Time to Live, TTL) πακέτου [Είναι ο μέγιστος αριθμός φορών που μπορεί να προωθηθεί ένα πακέτο πριν φτάσει στον προορισμό του] Περιορίζει την άσκοπη κυκλοφορία πακέτων στο δίκτυο για πάντα Internet Protocol (IP), IPv4 και IPv6 IPv4: διευθύνσεις 32- bit IPv6: διευθύνσεις 128- bit: 8 ομάδες των 4 δεκαεξαδικών ψηφίων χωρισμένες με : Π.χ. 2001:0db8:85a3:0042:1000:8a2e:0370:7334. 75

Επιθέσεις και Ασφάλεια Υπολογιστών Κακόβουλο λογισμικό: Ιός (virus): λογισμικό που εισέρχεται σε προγράμματα που υπάρχουν στον Η/Υ, προκαλεί διάφορες δυσλειτουργίες Σκουλήκι (worm): πρόγραμμα που ταξιδεύει στο δίκτυο, εγκαθίσταται σε Η/Υ και προωθεί αντίγραφά του σε άλλους Η/Υ Δούρειος ίππος (Trojan horse): πρόγραμμα που εισέρχεται στον Η/Υ μεταμφιεσμένο σε κάποιο επιθυμητό λογισμικό Λογισμικό υποκλοπής (spyware ή sniffing software): λογισμικό που συλλέγει πληροφορίες για την δραστηριότητα σε έναν Η/Υ και τις αναφέρει Λογισμικό ψαρέματος (phishing): απόκτηση πληροφορίας με το να τη ζητάς ρητά (π.χ. Μέσω δελεαστικών emails) Άρνηση υπηρεσιών (Denial of Service): υπερφόρτωση ενός server με πολλά (ψεύτικα) μηνύματα αίτησης από άλλα μηχανήματα Ενοχλητική ηλεκτρονική αλληλογραφία (spam) 76

Ασφάλεια Προστασία Τείχη προστασίας(firewalls): φιλτράρισμα πληροφορίας που περνάει εντός του συστήματος ή εντός δικτύου Φίλτρα ενοχλητικής αλληλογραφίας (spam filters) Διακομιστές μεσολάβησης (proxy servers): μεσολαβούν μεταξύ μεταξύ πελάτη και διακομιστή με στόχο να προστατέψουν τον πελάτη από δράσεις του διακομιστή Λογισμικό προστασίας από ιούς (antivirus): ανιχνεύει και απομακρύνει ιούς Αντιμετωπίζει ένα σύνολο από γνωστούς ιούς Χρειάζεται να ενημερώνεται με νέες μορφές ιών για να μπορεί να τις αντιμετωπίζει 77

Κρυπτογράφηση (encryption) Κρυπτογράφημένη (κωδικοποιημένη) πληροφορία Π.χ. Κάθε πακέτο πληροφορίας μετατρέπεται σε ένα άλλο με 1-1 αντιστοιχία Κρυπτογραφημένες εκδοχές πρωτοκόλλων: FTPS, HTTPS, Secure Sockets Layer (SSL) Ασφαλείς συνδέσεις μεταξύ πελατών και διακομιστών Κρυπτογραφία δημόσιου κλειδιού (public- key encryption) Φιλοσοφία: η γνώση για το πως κρυπτογραφούνται τα μηνύματα δεν προσφέρει δυνατότητα για αποκρυπτογράφηση Δημόσιο κλειδί: χρησιμοποιείται για κρυπτογράφηση μηνυμάτων που στέλνονται Ιδιωτικό κλειδί: Χρησιμοποιείται για αποκρυπτογράφηση μηνυμάτων από τους δέκτες 78

Κρυπτογράφηση δημόσιου κλειδιού 79