ΕΑΠ/ΠΛΗ22/ΑΘΗ.3 4 η ΟΣΣ 5/03/204 Συμπληρωματικές Διαφάνειες Νίκος Δημητρίου ΟΣΣ/5.03.204/Ν.Δημητρίου
ΟΣΣ/5.03.204/Ν.Δημητρίου 2
ΟΣΣ/5.03.204/Ν.Δημητρίου 3
ΟΣΣ/5.03.204/Ν.Δημητρίου 4
Θεωρία Aloha/Slotted Aloha ΟΣΣ/5.03.204/Ν.Δημητρίου 5
ΟΣΣ/5.03.204/Ν.Δημητρίου 6
ΟΣΣ/5.03.204/Ν.Δημητρίου 7
ΟΣΣ/5.03.204/Ν.Δημητρίου 8
Παράδειγμα Slotted Aloha ΟΣΣ/5.03.204/Ν.Δημητρίου 9
ΟΣΣ/5.03.204/Ν.Δημητρίου 0
ΟΣΣ/5.03.204/Ν.Δημητρίου
ΟΣΣ/5.03.204/Ν.Δημητρίου 2
k 0 k k? k d k k k k d k k d d k k d d k 0 k 0 k 0 k d d d d d d 2 2 k 0 2 ΟΣΣ/5.03.204/Ν.Δημητρίου 3
Έναρξη μετάδοσης A->C (Ο Α μεταδίδει & παρακολουθεί το κανάλι) A Δίαυλος αδρανής κοινός δίαυλος μέγιστο μήκος C B Συνθήκη ανίχνευσης συγκρούσεων στο CSMA/CD Δίαυλος αδρανής Έναρξη μετάδοσης Β->C (Ο Β μεταδίδει & παρακολουθεί το κανάλι) TRANSP A PROP AC PROP BC PROP CA =PROP AC PROP CB =PROP BC TRANSP B Ο Α αντιλαμβάνεται τη σύγκρουση σύγκρουση Ο Β αντιλαμβάνεται τη σύγκρουση ΟΣΣ/5.03.204/Ν.Δημητρίου Για να μπορέσει ο αποστολέας να αντιληφθεί τη σύγκρουση (ενώ μεταδίδει το πλαίσιο) θα πρέπει TRANSP 2 PROP Χειρότερη περίπτωση: Ο C ταυτίζεται με το Β (είναι στη μέγιστη δυνατή απόσταση από τον Α) TRANSP 2PROP MAX (μέγιστος χρόνος διάδοσης ενός bit end-end) 4
Παράδειγμα CSMA/CD ΟΣΣ/5.03.204/Ν.Δημητρίου 5
ΟΣΣ/5.03.204/Ν.Δημητρίου 6
ΟΣΣ/5.03.204/Ν.Δημητρίου 7
Network with hosts, H, H2, +several routers NET layer in H takes segments from transport layer, encapsulates each into a datagram (network-layer packet), sends the datagrams to nearby router, R. At H2, the NET layer receives datagrams from router R2, extracts transport-layer segments, delivers the segments the transport layer at H2. Role of routers : forward datagrams from input links to output links. truncated protocol stack, no upper layers above the network layer routers mostly do not run application /transport-layer protocols switch ΟΣΣ/5.03.204/Ν.Δημητρίου router 8
Encapsulation ΟΣΣ/5.03.204/Ν.Δημητρίου 9
ΟΣΣ/5.03.204/Ν.Δημητρίου 20
ΟΣΣ/5.03.204/Ν.Δημητρίου 2
Παράδειγμα IP fragmentation ΟΣΣ/5.03.204/Ν.Δημητρίου 22
IPv4 Datagram format 4 20 bytes IP header 8 2 6 20 UDP header + UDP data payload ΟΣΣ/5.03.204/Ν.Δημητρίου 23
Υπολογισμός IP packet size Αν ΙΡ packet size > MTU=>Fragmentation IP Packet size: 20+472+8=500 bytes >280 bytes (MTU) Fragmentation: Το IP layer θα δημιουργήσει 2 IP packets Κάθε fragmented packet εκτός του τελευταίου θα έχει πολλαπλάσιο των 8 bytes payload και μέγεθος μικρότερο του MTU. IP Packet IP header=20 bytes=> Payload=280-20=260=>260/8=57,5 (θεωρούμε το μεγαλύτερο ακέραιο floor(57,5)). Payload size: 57*8=256 bytes. Total IP packet size= 20+256=276 bytes. IP Packet 2 MTU IP header=20 bytes=> Payload=Initial payload- st IP packet payload= 480-256=224 bytes. Total IP Packet Size= 20+224=244 bytes ΟΣΣ/5.03.204/Ν.Δημητρίου 24
ΟΣΣ/5.03.204/Ν.Δημητρίου 25
Παράδειγμα IP routing ΟΣΣ/5.03.204/Ν.Δημητρίου 26
Subnet Number Next Hop 28.96.39.0/25 Interface 0 28.96.39.28/25 Interface 28.97.0.9/6 R2 93.96.39.0/25 R3 28.96.39.0/25 -> subnet mask...0000000=255.255.255.28 28.96.39.28/25-> subnet mask...0000000=255.255.255.28 28.97.0.9/6 -> subnet mask..00000000.00000000=255.255.0.0 93.96.39.0/25 -> subnet mask...0000000=255.255.255.28 Each destination address is AND ed with the respective subnet mask 28.96.39.32 = 0000000.000000.0000.000000 255.255.255.28 =...0000000 result = 0000000.000000.0000.0000000=28.96.39.28 ->Interface 93.96.39.34 AND 255.255.255.28 = =93.96.39.000000 AND 255.255.255.0000000 = 93.96.39.00000000= =93.96.39.0 ->Interface 0 ΟΣΣ/5.03.204/Ν.Δημητρίου 27
Subnet Number Next Hop 28.96.39.0/25 Interface 0 28.96.39.28/25 Interface 28.97.0.9/6 R2 93.96.39.0/25 R3 28.97.40.32 AND 255.255.255.28 = =28.97.40.0000000 AND 255.255.255.0000000=28.97.40.00000000=28.97.40.0 28.97.40.32 AND 255.255.0.0 = =28.97.40.0000000 AND 255.255.00000000.00000000= =28.97.0.0 Longest Prefix matching: ->R2 ΟΣΣ/5.03.204/Ν.Δημητρίου 28
IP header Checksum Check sum: Χρησιμοποιείται για την ανίχνευση λαθών στην επικεφαλίδα του IP datagram (χρησιμοποιείται και σε άλλους τύπους πακέτων/πλαισίων σε άλλα OSI επίπεδα ) Αποστολέας: Υπολογίζει το checksum και το προσθέτει στο σχετικό πεδίο της επικεφαλίδας. Παραλήπτης: Υπολογίζει εκ νέου το checksum και το συγκρίνει με την τιμή που υπάρχει στο σχετικό πεδίο (Ισοδύναμα) Αθροίζει όλα τα πεδία της επικεφαλίδας (και το checksum field) και ελέγχει αν το αποτέλεσμα είναι 0. ΟΣΣ/5.03.204/Ν.Δημητρίου 29
Checksum of IP header Το IP header checksum λαμβάνει υπόψη μόνο τα Bytes της επικεφαλίδας. Το τμήμα δεδομένων (που ουσιαστικά περιλαμβάνει ένα TCP ή UDP segment έχει ξεχωριστό ανεξάρτητο- μηχανισμό υπολογισμού checksum (στο επίπεδο μεταφοράς ) ΟΣΣ/5.03.204/Ν.Δημητρίου 30
Παράδειγμα: Έστω η ληφθείσα IP header 4500 003c c46 4000 4006 be6 ac0 0a63 ac0 0a0c 4500 003c c46 4000 4006 be6 ac0 0a63 ac0 0a0c Κάθε δεκαεξαδικό ψηφίο αντιστοιχεί σε ένα 4-μπιτο δυαδικό αριθμό π.χ. source IP address a c. 0.0 a.6 3= 00 00.000 0000.0000 00.00 00=72.6.0.99 ΟΣΣ/5.03.204/Ν.Δημητρίου 3
Ανάλυση IP header (για το παράδειγμα) Η προηγούμενη επικεφαλίδα (hexadecimal) 4500 003c c46 4000 4006 be6 ac0 0a63 ac0 0a0c 45 : 4 -> IP version, 5 ->header length. Μέγεθος header 5 4=20 bytes. 00 : type of service / normal operation. 003c : Συνολικό μήκος IP datagram. Στην περίπτωση του παραδείγματος είναι 60 bytes c46 : identification field. (0 0 3 c =0 x 6 4 +0 x 6 3 +3 x 6 +c x 6 0 =48+2=60) 4000 αντιστοιχεί σε 2 bytes (6 bits) για τη διαδικασία fragmentation. 3 bits για flags και 3 bits για fragment offset. 4006 : 40 -> TTL field, 06 -> protocol field of the IP header (06->TCP). be6 : checksum υπολογισμένο από τον αποστολέα ac00a63 : IP address αποστολέα ac00a0c : IP address παραλήπτη. ΟΣΣ/5.03.204/Ν.Δημητρίου 32
IP header checksum -παράδειγμα Βήμα ο Δημιουργία γραμμών που αποτελούνται από 4 6δικά ψηφία ( μισή γραμμή του IP header-2 δυαδικά bytes) Μετατροπή hex -> binary (κάθε 6δικό ψηφίο μετατρέπεται στον αντίστοιχο 4-μπιτο δυαδικό) Το checksum πεδίο τίθεται ίσο με 0 ΟΣΣ/5.03.204/Ν.Δημητρίου 33
Βήμα 2ο Τελικά κρατούμενα 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Άθροιση όλων των γραμμών με κρατούμενα ΟΣΣ/5.03.204/Ν.Δημητρίου Ενδιάμεσο αποτέλεσμα 34
Βήμα 3ο Άθροιση των τελικών κρατουμένων στο αποτέλεσμα Ενδιάμεσο αποτέλεσμα προηγούμενης διαφάνειας 0 0 0 0 0 0 0 0 Τελικά Κρατούμενα προηγούμενης διαφάνειας 0 0 0 0 0 0 0 0 0 Τελικό αποτέλεσμα Συμπλήρωμα ως προς του τελικού αποτελέσματος 0 0 0 0 0 0 0 checksum b e 6 be6 ΟΣΣ/5.03.204/Ν.Δημητρίου Μετατροπή σε δεκαεξαδικό Σύγκριση με το checksum που είχε προσθέσει ο αποστολέας στο σχετικό πεδίο. Είναι ίσα, άρα στο header δεν ανιχνεύεται σφάλμα 35