collision avoidance

ΚΕΦΑΛΑΙΟ 4: Δικτύωση και Διαδίκτυο
● Βασικές αρχές δικτύων
● Τοπικά δίκτυα
● Διασύνδεση δικτύων, το Διαδίκτυο
● Υπηρεσίες
Οι διαφάνειες περιλαµβάνουν σε βασικές γραµµές το υλικό του βιβλίου
αλλά µε διαφορετική σειρά
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
1
Κατηγοριοποίηση δικτύων
●  Γεωγραφική κάλυψη
●  Τοπικό δίκτυο (LAN)
●  Δίκτυο ευρείας περιοχής (WAN)
●  Τεχνολογία
●  Κλειστό (proprietary network)
●  Closed standards (Novel, IBM,…)
●  Ανοικτό
●  Open standards: TCP/IP Internet
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
2
Τοπολογίες Δικτύων
●  Τοπικά δίκτυα (LANs)
o Δίαυλος (Bus)
o Αστέρας (Star)
o Δακτύλιος (Ring)
o Άτακτη τοπολογία (wireless ad-hoc)
●  WANs: Γενικός γράφος
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
3
Τοπολογίες δικτύων
Σύνδεσµοι = ενσύρµατοι, ασύρµατοι
Ethernet
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
4
Τοπολογίες δικτύων
Wireless mesh networks
Ethernet, WiFi
όχι απλός υπολογιστής αλλά δικτυακός κόµβος
(όχι απαραίτητα κοινός υπολογιστής αλλά
εξειδικευµένη δικτυακή συσκευή)
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
5
Γιατί υπάρχουν δίκτυα;
Δικτυακός κόµβος
Σύνδεσµοι από κάθε
σηµείο σε κάθε σηµείο (n(n-1))
Σύνδεσµοι µε λίγους δικτυακούς
κόµβους µόνο (kn)
Α
•  Στατιστική πολυπλεξία
•  Οικονοµίες κλίµακας
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
Β
Μεταγωγή
κυκλώµατος
Μεταγωγή
πακέτων
6
Πρωτόκολλα δικτύων
•  Δίκτυο = διασκορπισµένο σύστηµα
–  Όχι κεντρικός έλεγχος
–  Επικοινωνία µε µηνύµατα µόνο!
•  Πρωτόκολλα: Κανόνες που πρέπει να
ακολουθούν οι συσκευές για να λειτουργήσουν
αρµονικά και να προσφέρουν µια συγκεκριµένη
υπηρεσία (σαν οµάδα)
–  Πως να ερµηνεύσουν εισερχόµενα µηνύµατα (δοµή+
περιεχόµενο µηνυµάτων)
–  Πως να αντιδράσουν σε αυτά (τι να υπολογίσουν)
–  Τι µηνύµατα να στείλουν στους γείτονες
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
7
Οι στοίβα των πρωτοκόλλων
•  Η συνολική λειτουργικότητα σπάζει
σε «φλοιούς» (layers) από πιο απλές
υπηρεσίες
•  Ο πάνω φλοιός στηρίζεται στις
υπηρεσίες του αµέσως από κάτω
•  Παράδειγµα: το ταχυδροµείο
•  Κάθε φλοιός έχει τα δικά του
πρωτόκολλα
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
Στοίβα
Πρωτοκόλλων
8
Πως κατασκευάζουµε ένα LAN
•  Δεδοµένα προβλήµατος:
–  Θέλουµε k PCs να στέλνουν πακέτα πληροφ. µεταξύ τους ανά 2 ή 1->k
–  Δεν ξέρουµε από πρίν πότε και πού θέλει κάποιος να στείλει
•  Λύση Ethernet
CSMA/CD, CSMA/CA
–  κάθε τερµατικό έχει την δική του διεύθυνση, όλα ακούνε και στέλνουνε
στο ιδιο “κανάλι” (ενσύρµατο ή ασύρµατο)
–  Carrier Sense CS: συνέχεια ακούµε στό κανάλι και καταλαβαίνουµε άν
κάποιος στέλνει (ανίχνευση σήµατος του ποµπού)
–  Multiple Access MA: οποισδήποτε αποφασίζει να στείλει αρκεί το κανάλι
να είναι ελεύθερο (τυχαία πολλαπλή πρόσβαση αντί για κεντρικό έλεγχο)
–  Αντιµετώπιση συγκρούσεων:
•  Τις καταλαβαίνω εγκαίρως: σταµατάω να εκπέµπω και ξαναστέλνω σε τυχαίο χρόνο
(collision detection CD), περίπτωση ενσύρµατου Ethernet: ακούω ταυτόχρονα που
στέλνω, καταλαβαίνω αµέσως σύγκρουση
•  Δέν τις καταλαβαίνω εγκαίρως ή και καθόλου: προσπαθώ µε έξυπνο τρόπο να τις
αποφύγω όσο γίνεται, ζητώ επιβεβαίωση από παραλήπτη (collision avoidance CA),
περίπτωση ασύρµατου Ethernet, δεν µπορώ να ακούω όταν στέλνω
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
9
Το κλασσικό (ενσύρµατο) Ethernet
•  Λύση του Ethernet (1970): Ενσύρµατος δίαυλος, χρήση
διευθύνσεων MAC
•  Πρωτόκολλο CSMA/CD (Carrier Sense Multiple Access
with Collision Detection)
–  Συσκευή ακούει συνέχεια τον δίαυλο, µόλις είναι ελεύθερος στέλνει
(όταν έχει κάτι να στείλει)
–  Εάν υπάρχει σύγκρουση, το καταλαβαίνει έγκαιρα και κάνει back-off
(φάση congestion avoidance)
–  Back-off: διαλέγει ένα τυχαίο χρόνο T να περιµένει και ξαναστέλνει
–  Βασική υπόθεση: συσκευή µπορεί να ακούει ταυτόχρονα που
στέλνει -> ανιχνεύει έγκαιρα σύγκρουση
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
10
Ασύρµατο Ethernet (WiFi)
•  Το πρόβληµα του κρυµµένου τερµατικού
•  Ασύρµατα τερµατικά επικοινωνούν µε ένα
σταθµό βάσης
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
11
Ασύρµατο Ethernet (WiFi)
•  Πρόβληµα: ασύρµατη κάρτα µπορεί είτε να στέλνει είτε να λαµβάνει
–  Δεν µπορεί να ανιχνεύσει σύγκρουση µόνη της (µεταδίδει όλο το πακέτο
πρώτα, πρόβληµα κρυµµένου τερµατικού)
–  Χρειάζεται ack από δέκτη, και πάλι στέλνει όλο το πακέτο άδικα (κακό CD)
•  Λύση: πρωτόκολλο CSMA/CA (Collision Avoidance)
–  Λογική: ελαχιστοποίησε συγκρούσεις
–  Πριν µεταδόσεις άρχισε ένα (τυχαίο) ξυπνητήρι Τ που µετράει χρόνο µόνο όσο
το κανάλι είναι ελεύθερο. Όταν χτυπήσει άρχισε να µεταδίδεις. Περίµενε
επιβεβαίωση. Εάν όχι τότε επανέλαβε το ίδιο µε ξυπνητήρι 2Τ (congestion
avoidance phase)
•  Επέκταση για πλήρη αποφυγή συγκρούσεων µετάδοσης πακέτων
–  Όπως στο CSMA/CA, αλλά αντί να στείλεις ολόκληρο πακέτο στείλε RTS
(άδεια να µεταδόσεις), περίµενε CTS από σταθµό βάσης (ΣΒ)
–  CTS περιέχει το id του σταθµού που επιτρέπει ο ΣΒ να στείλει πακέτο
–  Εάν έγινε σύγκρουση (το CTS υποδεικνύει άλλο σταθµό, ή timeout), µπες στην
congestion avoidance phase
–  Συγκρούσεις πιθανές πάλι αλλά δεν έχουν µεγάλο κόστος: |RTS|<<data packet
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
12
Σύνδεση LANs
1.  Φτιάχνουµε ΕΝΑ µεγαλύτερο LAN (ιδίου τύπου!)
●  Επαναλήπτης (repeater) συνδέει απλά ≥ 2 διαύλους
(Ethernets)
●  Γέφυρα (bridge) είναι έξυπνος επαναλήπτης
(φιλτράρει τα µηνύµατα)
•  Μεταγωγέας (Ethernet switch):
Γέφυρα που συνδέει (σε αστέρι) τερµατικές συσκευές υποκαθιστώντας το
δίαυλο: ελαχιστοποίηση άχρηστων µηνυµάτων, αποφυγή συγκρούσεων
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
13
Διασύνδεση LANs, “internets”
2. 
Κρατάµε τα LANs όπως έχουν
● 
● 
LAN3
Ο δροµολογητής (router) συνδέει ≥ 2 LANs σχηµατίζοντας
ένα διαδίκτυο (inter-network, internet).
Τα αρχικά δίκτυα ενός διαδικτύου διατηρούν την ατοµικότητα
τους και συνεχίζουν να ενεργούν ανεξάρτητα
data AB
data AB KL
LAN1
B
L
LAN4
LAN6
LAN5
K
A
LAN2
Ταχυδροµεία
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
Παγκόσµια
εµβέλεια
Τοπική
εµβέλεια
LAN
= τοπική
µεταφορική εταιρία
14
Διαδικτυακά πρωτόκολλα
Web
TCP
UDP
data AB
IP
data AB KL
Ethernet
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
15
LAN
Δροµολόγηση µεταξύ αυτόνοµων
συστηµάτων, Ιnternet
ΑΣ2
gateway
router
ΑΣ1
ΑΣ3
Αυτόνοµο σύστηµα (ΑΣ)
Διαχειριστική οντότητα
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
16
Η επιχειρηµατική δοµή του Διαδικτύου
●  Το Διαδίκτυο (Internet) είναι ένα διαδίκτυο που
εκτείνεται σε ολόκληρο τον κόσµο.
–  Ξεκίνησε από την DARPA to 1973.
–  Σήµερα συνδέει 1 δισεκατοµµύριο υπολογιστές.
Εταιρικό
διαδίκτυο
(Ιντρανετ)
gateway
Πρόσβαση
(access)
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
17
Διευθυνσιοδότηση στο Διαδίκτυο:
“απόλυτες” διευθύνσεις IP
●  Η διεύθυνση ΙΡ είναι ένα σχήµα 4 bytes που χρησιµοποιείται
για τον προσδιορισµό της φυσικής διεύθυνσης µιας
µοναδικής µηχανής στο Διαδίκτυο (όπως ο τηλεφωνικός
αριθµός +302104539009 προσδιορίζει µια µοναδική
τηλεφωνική συσκευή)
●  Οι τελείες δεκαδικού συµβολισµού αποτελούν το πρότυπο
γραφής µίας ΙΡ διεύθυνσης, χωρίζοντας τα 4 bytes της
διεύθυνσης (πχ: 192.207.177.133)
●  Διεύθυνση δικτύου Α: 192.207.177.1xx
●  Περιλαµβάνει όλες τις µηχανές που έχουν IP address που αρχίζει από
192.207.177.1 (πχ 192.207.177.145)
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
18
Μνηµονικά ονόµατα
●  To όνοµα ενός υπολογιστή (host name) (ή που προσφέρει µια υπηρεσία)
είναι ένα µνηµονικό όνοµα, δοµηµένο ιεραρχικά σε περιοχές (domains)
–  Όνοµα υπολογιστή= υπηρεσία ή “παρατσούκλι” υπολογιστή όνοµα
περιοχής (π.χ. dias.econ.aueb.gr, ftp.aueb.gr, www.in.gr)
–  Υπηρεσία: ftp, www, smtp, imap, pop3, sip, telnet,…
–  Το όνοµα περιοχής (domain name) χαρακτηρίζει µια οντότητα όχι
απαραίτητα γεωγραφικά ενιαία (εταιρία, ISP, πανεπιστήµιο, δηµόσιο
οργανισµό,...)
•  Ιεραρχικό: www.cs.aueb.gr
•  Η περιοχή ανώτατου επιπέδου κατηγοριοποιεί τους ιδιοκτήτες των
περιοχών:
⋅
•  Κατά χρήστη – π.χ. .com = εµπορική περιοχή.
•  Κατά χώρα – π.χ. .gr = περιοχή Ελλάδας.
•  Υποπεριοχές και ονόµατα ιδιόκτητων υπολογιστών:
•  Προσδιορίζονται από τον ιδιοκτήτη της περιοχής, καταχωρηµένες στον ICANN
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
19
DNS: διασκορπισµένη υπηρεσία καταλόγου
•  Βασικό πρόβληµα: όνοµα υπολογιστή -> δικτυακή
διεύθυνση (IP address)
–  Αντίστοιχο παράδειγµα : πως βρίσκω το τηλέφωνο της
“υπηρεσίας ΦΠΑ της εφορίας Α”; από τον τηλεφωνικό κατάλογο!
–  Internet: Domain Name System = σύστηµα που λύνει το
παραπάνω πρόβληµα
•  DNS: διασκορπισµένος κατάλογος µε ιεραρχική δοµή
•  Κάθε domain πρέπει να τηρεί ένα διακοµιστή ονοµάτων (name
server)
•  Ένας name server ενός domain γνωρίζει
•  Τις IP διευθύνσεις των υπολογιστών που δίνουν τις διάφορες
υπηρεσίες (ftp, smtp, www,…), ή έχουν κάποιο παρατσούκλι
•  Tις IP διευθύνσεις των name server των sub-domains του (πχ ο
name server του aueb.gr γνωρίζει την IP address του name server
του cs.aueb.gr
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
20
Λειτουργία του DNS
Εύρεση του IP address για diva.eecs.berkeley.edu
Root name server IP = a
(2)
com
...
edu
...
IP = b (4)
stanford
berkeley
...
IP = c (6)
geo
asia
IP = e
...
eecs
diva
IP = d
(3)
gr
Local name
server
(1)
Host
(8)
(5)
(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
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
21
Κατανεµηµένα συστήµατα
●  Τα κατανεµηµένα συστήµατα αποτελούνται από
µονάδες (υπηρεσίες) οι οποίες εκτελούνται σε
διαφορετικούς υπολογιστές ενός δικτύου.
–  Η βασική υποδοµή (επικοινωνία, ασφάλεια, βασικές υπηρεσίες)
συνήθως παρέχεται από προκατασκευασµένα συστήµατα.
●  Παράδειγµα: Enterprise Java Beans από τη Microsystems, .NET
Framework από τη Microsoft.
●  Grid computing (τεχνολογία Πλέγµατος): SW, HW =
υπηρεσίες, αφαιρούµε πληροφορία γεωγραφικής θέσης,
φυσικών χαρακτηριστικών µηχανών
●  “Θέλω η υπηρεσία Α να τρέξει στο ισοδύναµο µιας µηχανής
2,8GHz κλπ”
●  Δεν µε ενδιαφέρει ποιος έχει κατασκευάσει την Α, πού είναι η
φυσική µηχανή που ένα κοµµάτι της θα αφιερωθεί σε εµένα,...
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
22
Εφαρµογές Διαδικτύου
●  Ηλεκτρονική αλληλογραφία (e-mail)
●  To πρωτόκολλο µεταφοράς αρχείων (FTP)
●  Αποµακρυσµένη σύνδεση: telnet, κτλ.
●  O Παγκόσµιος Ιστός World Wide Web
●  VoIP: SIP
●  ….
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
23
Eπικοινωνία εφαρµογών
●  Μοντέλο πελάτη/διακοµιστή (client/server).
–  Ένας διακοµιστής, πολλοί πελάτες
–  Ο διακοµιστής (server) πρέπει να τρέχει συνεχώς
(περιµένει πελάτες να συνδεθούν)
–  Ο πελάτης αρχικοποιεί την επικοινωνία
●  Οµότιµο µοντέλο (peer-to-peer).
–  Οι διεργασίες (εφαρµογές) επικοινωνούν ως ισότιµες.
–  Οι διεργασίες εκτελούνται σε προσωρινή βάση.
–  Δηµοφιλές µέσο για την ανταλλαγή αρχείων µέσω του
Διαδικτύου.
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
24
Το µοντέλο πελάτη/διακοµιστή
Client – Server model
Server
Client
FTP
Email (SMTP)
Web
VoIP (SIP)
SSH
…..
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
25
Το µοντέλο πελάτη/διακοµιστή
συγκρινόµενο µε το οµότιµο µοντέλο
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
26
Σύνδεση µε εφαρµογές
Πλήρης διεύθυνση διαδικασίας = [IP address , port #]
client
Web server
ports (θύρες = “εσωτερικά γραµµατοκιβώτια γραφείων”)
…
12
80
IP
…
client C: N3,n
IP address N1
server A: διεύθυνση = N1,k
port k = υποδιεύθυνση
port n
N3
“κεντρικό γραµµατοκιβώτιο
κτηρίου” = IP address
IP network
N2
server Β: διεύθυνση = N2,m
port m
Servers: παρέχουν υπηρεσίες, ακούν σε γνωστές υπο-διευθύνσεις
Clients: συνδέονται στους servers, παίρνουν την πληροφορία,
την παρουσιάζουν στους χρήστες
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
27
Ηλεκτρονική αλληλογραφία
●  Το e-mail είναι ένα σύστηµα για την µεταφορά
µηνυµάτων µεταξύ των χρηστών του Διαδικτύου.
●  Ο διακοµιστής αλληλογραφίας (mail server)
εξυπηρετεί τους υπολογιστές µίας περιοχής.
–  Η αποστολή ενός mail µέσα στην περιοχή γίνεται
µέσω του διακοµιστή αλληλογραφίας.
–  Η λήψη ενός mail στην περιοχή γίνεται στον
διακοµιστή αλληλογραφίας.
–  Το mail παραλαµβάνεται έπειτα από αίτηση του
χρήστη, βάσει των πρωτοκόλλων:
●  POP3
●  IMAP
●  WWW
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
28
Electronic mail
mail to [email protected] from [email protected]
Send an email message
Access the mail server for messages
mail server
mail server
SMTP
SMTP
25
25
user agent (Alice)
(MS Outlook)
smtp.aueb.gr
Port 25
Sending an message:
Simple Mail Transfer Protocol
143
IMAP
user agent (Jane)
(Firefox)
smtp.ntua.gr, imap.ntua.gr
Port 25
port 143
Receiving emails:
POP3: port 110, memory less
IMAP: port 143, memory
http: only a browser is required
to send and receive (webmail,
hotmail,…)
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
29
File Transfer Protocol
ftp client
control connection
port 21
ftp server
21
20
data connection
port 20
(one per file)
τοπικό σύστηµα
αρχείων
µακρινό σύστηµα αρχείων
Control: user id, list, chdir, put, get, ...
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
30
World Wide Web
www client (browser)
web server
HTTP, port 80
http request
80
http response
www.aueb.gr
HTML
Υλοποίηση ιστού
Web browser: παρουσιάζει έγγραφα στον χρήστη, γραµµένα σε HTML
Web server: αποθηκεύει ή δηµιουργεί πληροφορία, στέλνει έγγραφα σε HTML
HTTP: πρωτόκολλο επικοινωνίας web browser – web server
HTML: γλώσσα για την σύνταξη εγγράφων που καταλαβαίνει ο browser
URL: Σύνταξη µοναδικών διευθύνσεων εγγράφων στον ιστό
Υπολογιστής υπηρεσίας
Πρωτόκολλο προσπέλασης
Διεύθυνση αρχείου
Κεφάλαιο 4: «Δικτύωση και Διαδίκτυο»
Όνοµα αρχείου
31