TCP/IP Networks (2)
Εισαγωγή Τα πρωτόκολλα TCP/IP είναι de-facto standards μετάδοσης δεδομένων Επιτρέπουν τη συνεργασία μεταξύ υπολογιστών σε διασυνδεδεμένα δίκτυα και την από κοινού χρήση πόρων Αποτελούν τα πρωτόκολλα μετάδοσης δεδομένων στο Internet Αναπτύχθηκαν από ομάδα ερευνητών γύρω από το ARPAnet
Γενική περιγραφή
Διευθυνσιοδότηση στο Internet To Internet αποτελεί ένα μεγάλο σύνολο από διασυνδεδεμένα ανεξάρτητα δίκτυα μέσω απλών μεταγωγέων πακέτου (routers) Ο χρήστης μπορεί να έχει πρόσβαση σε πόρους σε οποιοδήποτε από αυτά τα δίκτυα Τα IP datagrams διασχίζουν πλήθος δικτύων για να φτάσουν στο δίκτυο προορισμό με διαφανή τρόπο για το χρήστη
Διευθυνσιοδότηση στο Internet (2) Το μόνο που πρέπει να γνωρίζει ο χρήστης είναι το “IP Address” του άλλου συστήματος (λογική διεύθυνση) IP Address: 147.102.13.10 32 bit number, γράφεται ως 4 decimals (ένα για κάθε 8 bit) Το IP Address περιέχει πληροφορίες όπως: 147.102 (δίκτυο), 147.102.13 (υποδίκτυο), το τελευταίο 10 ο σταθμός εργασίας
Διευθυνσιοδότηση στο Internet (3) 147.102.13.10, dolly.netmode.ntua.gr 3 κλάσεις IP Addresses, A, B & C Class Διεύθυνση δικτύου: 147.102.0.0 Broadcast address: 147.102.13.255 Loopback address: 127.0.0.1, 127.0.0.0
Διευθυνσιοδότηση στο Internet (4) ΑΣΚΗΣΕΙΣ Σε τι κλάση δικτύου IP είναι συνδεδεμένος ο υπολογιστής: anser.bbnplanet.net (4.1.1.2) Σε τι κλάση δικτύου IP είναι συνδεδεμένος ο υπολογιστής: solon.elot.gr (193.218.124.12) Τι κλάσεις δικτύων IP χρειάζεται ένας διαχειριστής για να φιλοξενήσει 534 υπολογιστές
Χωρισμός σε υποδίκτυα (subnets) Λόγοι: μείωση φορτίου σε σημεία συμφόρησης, ασφάλεια, διαφορετικά μέσα μετάδοσης (Ethernet, Token ring, FDDI) <IP Address> = <netid><subnetid><hostid> Subnet mask: 32-bit number με 1 για το netid & subnetid, και 0 για hostid Οι δρομολογητές εκτός δικτύου γνωρίζουν μια διαδρομή, ενώ μέσα στο δίκτυο υπάρχουν πολλές διαδρομές για κάθε υποδίκτυο hostid
Χωρισμός σε υποδίκτυα (2) ΠΑΡΑΔΕΙΓΜΑΤΑ 147.102, subnetid=4bit, 14 υποδίκτυα x 4094 κόμβους, subnet-mask=255.255.240.0 147.102, subnetid=8bit, 254 υποδίκτυα x 254 κόμβους , subnet-mask=255.255.255.0 193.218.124, subnetid=3bit, 6 υποδίκτυα x 30 κόμβους, subnet-mask=255.255.255.224 Κόστος: 180 κόμβοι αντί 254 στην τελευταία περίπτωση
Χωρισμός σε υποδίκτυα (3) ΑΣΚΗΣΗ 193.218.124, subnetid=3bit, 6 υποδίκτυα x 30 κόμβους, subnet-mask=255.255.255.224, ποιές είναι οι IP διευθύνσεις των IP υποδικτύων; 193.218.124, subnetid=4bit, πόσα υποδίκτυα x πόσους κόμβους;
Καθορισμός IP διευθύνσεων (Internet) Αίτηση για επίσημη IP διεύθυνση στο RIPE (Registree IP European) ή τον τοπικό πληρεξούσιο (για την απόκτηση διεύθυνσης δικτύου) (Όχι-Internet) Οι χρηστές καθορίζουν μόνοι τους τη διεύθυνση (μοναδική διεύθυνση σε κάθε κόμβο)
Domain names Το FORTHNET συμβουλεύει για registration κάτω από τα ακόλουθα domains: COM.GR: if you are a company EDU.GR: if you are an educational institute/organisation NET.GR: if you are an Internet/Network Service Provider ORG.GR: if you are an organisation (in general)
Προβλήματα IP διευθύνσεων Κωδικοποιούν όχι υπολογιστή αλλά σύνδεση σε ένα δίκτυο Ένας δρομολογητής που συνδέει ν δίκτυα έχει ν IP διευθύνσεις Ένας φορητός υπολογιστής έχει διαφορετικό IP address σε κάθε δίκτυο που συνδέεται Όχι δυνατότητες ανάπτυξης του δικτύου Πεπερασμένο σύνολο
Πρωτόκολλο ICMP Internet Control Message Protocol (ICMP) Μηνύματα για δυσλειτουργίες και λειτουργίες ελέγχου του δικτύου αναφορά σφαλμάτων δοκιμή δυνατότητας πρόσβασης σε κόμβο έλεγχος συμφόρησης ειδοποίηση αλλαγής διαδρομής μέτρηση επιδόσεων διευθυνσιοδότηση υποδικτύων
Πρωτόκολλο IP Connectionless technology: Η πληροφορία μεταφέρεται σε μια σειρά από IP datagrams που στέλνονται ανεξάρτητα και χωρίς αξιοπιστία Ανεξάρτητα: κάθε ένα μεταφέρει διευθύνσεις πηγής, προορισμού, κλπ. Χωρίς αξιοπιστία: ένα IP datagram μπορεί να χαθεί, να διπλασιαστεί (αν καθυστερήσει και επαναμεταδοθεί), κλπ.
Address Resolution Protocol (ARP) Διατηρεί τοπικό πίνακα δρομολόγησης με αντιστοιχίες μεταξύ IP διευθύνσεων και φυσικών διευθύνσεων Αν η IP διεύθυνση προορισμού υπάρχει στο πίνακα, το ζευγάρι των διευθύνσεων χρησιμοποιείται για την αποστολή των δεδομένων Αν η IP διεύθυνση προορισμού δεν υπάρχει στο πίνακα, το ARP την ανακαλύπτει με κατάλληλα μηνύματα
ARP (2) ~> arp -a Net to Media Table Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- le0 irina.netmode.ece.ntua.gr 255.255.255.255 08:00:20:79:bc:8c le0 dolly.netmode.ece.ntua.gr 255.255.255.255 08:00:20:7c:79:16 le0 aris.netmode.ece.ntua.gr 255.255.255.255 00:00:c0:54:50:d3 le0 router.netmode.ece.ntua.gr 255.255.255.255 08:00:8f:10:c8:b8 le0 eleni.netmode.ece.ntua.gr 255.255.255.255 SP 08:00:20:22:1b:da
Δρομολόγηση Άμεση δρομολόγηση (direct) Έμμεση δρομολόγηση (indirect) Κόμβος στέλνει IP datagrams σε κόμβο του ίδιου υπο-δικτύου Έμμεση δρομολόγηση (indirect) Κόμβος στέλνει IP datagrams σε κόμβο του ίδιου δικτύου, χρησιμοποιώντας δρομολογητές (routers) Ο κόμβος πρέπει να γνωρίζει τη διεύθυνση του δρομολογητή Ο δρομολογητής πρέπει να γνωρίζει τη διαδρομή (επόμενος δρομολογητής) προς το προορισμό
Δρομολόγηση (2) Πίνακας δρομολόγησης (routing table) Εγγραφές του τύπου (N, R) N: Δίκτυο προορισμού R: Επόμενος δρομολογητής Default route: 0.0.0.0 Πίνακας δρομολόγησης σε Host Routing Table: Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- localhost localhost UH 0 4 lo0 net.netmode.ece.ntua.gr eleni.netmode.ece.ntua.gr U 3 347 le0 default router.netmode.ece.ntua.gr UG 0 887
Λειτουργίες κατακερματισμού και επανασύνδεσης Fragmentation & re-assembly: προκειμένου IP datagrams να περάσουν από υποδίκτυα που υποστηρίζουν διαφορετικού μεγέθους πεδίο δεδομένων
Πρωτόκολλο TCP Αξιόπιστη υπηρεσία μεταφοράς με σύνδεση Χρήσιμη για εφαρμογές που μετακινούν μεγάλες ποσότητες φορτίου TCP ports (16 bits) Sequence number TCP segments TCP doesn’t number the datagrams but octets Checksum
Πρωτόκολλο TCP (2) Acknowledgement number (=1500, όλα τα δεδομένα μέχρι και το 1500 octet έχουν ληφθεί) Sliding Window
Sockets & Application layer Αν κάποιος θέλει να στείλει ένα αρχείο στον υπολογιστή 128.6.4.7 πρέπει να δείξει ότι θέλει να μιλήσει με τον ftp server Αυτό επιτυγχάνεται με τα sockets Ο client χρησιμοποιεί κάποιο τυχαίο TCP port Internet addresses TCP ports connection1 147.20.12.1, 123.1.43.1 1234, 21 connection1 147.20.12.1, 123.1.43.1 4321, 21
Πρωτόκολλο UDP Μη αξιόπιστη υπηρεσία μεταφοράς χωρίς σύνδεση Χρήσιμη για τη μεταφορά μηνυμάτων UDP ports (16 bits) UDP datagrams
Υπηρεσίες TCP/IP Remote Login Mail Network File Systems Remote Printing Remote execution Name Servers FTP World Wide Web