Tuesday, June 28, 2011

Ο μίτος της θεωρίας

Προετοιμάζω μια παρουσίαση στο θερινό σχολείου του Δημόκριτου: Βασικές Έννοιες για το Δίκτυο Η παρουσίαση στέκεται στο θέμα "θεωρία και δίκτυο", ισχυρίζεται οτι είναι αδύνατη η σχέση. Πολύ engineering Λίγο science ... Φέρνει το παράδειγμα από την θεωρία υπολογισμού - Godel/Church/Turing που σταθεροποίησε την αρχιτεκτονική (*) για να κατασκευαστεί ο Υπολογιστής. Αλλιώς γιατί το ΙΝΤΕL πρόγραμμα να είναι το ίδιο πράγμα με το AMD πρόγραμμα ? Αυτό τό λέμε γιατί το Διαδίκτυο έχει προβλήματα εξέλιξης, προβλήματα στους τομείς της Δρομολόγησης, Διευθυνσιοδότησης, της Ασφάλειας κλπ που σχετίζονται με την αρχιτεκτονική του δικτύου. Το πρόγραμμα CLEAN SLATE (ΗΠΑ) πήρε το δρόμο της νέας αρχιτεκτονικής πριν 10 χρόνια, από το 2008 έχουμε το Future Internet που συνεχίζει.. (**) Το σύνθημα για μετάβαση στο IPV6 έπεσε και επίσημα πλέον (δες RIPE) Τι φταίει και δεν έχουμε αποτέλεσμα? Η ανάλυση που κάνει το πρόγραμμα RINA - Recursive INternet Architecture λέει ότι φταίει η έλλειψη προσδιορισμού βασικών εννοιών δικτύωσης όπως NAME, ADDRESS, ROUTE-PATH για υποστήριξη διαφόρων εφαρμογών – APPLICATION, αλλά και τι είναι τελικά το LAYER ? Προχωρήσαμε πολύ γρήγορα χωρίς σχέδιο, αντιγράψαμε το τηλεφωνικό δίκτυο και απορρίψαμε λύσεις τύπου ISO-CLNS. Πως εμπλέκομαι σ´αυτά ? Συνάντησα τη Δικτύωση με τις διόπτρες του DECLARATIVE PROGRAMMING και ο αρχικός ενθουσιασμός μου είπε "δες τα βασικά- fundamentals δηλ. Τι είναι Δίκτυο ?" οπότε άρχισα να ψάχνω τα βασικά. Ονόμασα το πρακτικό πρότζεκτ που είχα το 1990 “Αριάδνη Τι ?” ARIADNE-T και το ανακοίνωσα στο Ερευνητικό Κέντρο Stanford Research Institute που έτρεχε το NIC. Εκανα κάποια πρόοδο ψάχνοντας τα βασικά των δικτύων και τα ανακοίνωσα σε ημερίδα της ΕΕΑΕ εκπροσωπόντας τον ΟΤΕ το 1996 Η κατανόηση των λειτουργιών (πάνω στους H/Y) που συγκροτούν το Ίντερνετ στηρίζεται στις εξής βάσεις: * Μεταγωγή Πακέτων (Ψηφιακής Πληροφορίας) * Διαστρωμμάτωση Λειτουργιών (Layering) * Επικοινωνία μεταξύ στρωμμάτων (Peering) * Κατανεμημμένα προγράμματα H/Y (το μοντέλο CLIENT/SERVER) Μετά από την περιγραφή των γενικών εννοιών και με πορεία "από τα κάτω προς τα πάνω" (στρώμματα) να δούμε τα ειδικά εξαρτήματα και έννοιες που αποτελούν την τεχνική βάση του Internet. και κάπου στα 1999 έφτιαξα ένα μοντέλο ερμηνεύοντας την εξέλιξη του δικτύου με συστήματα όπως DNS, MIME, NIR (WWW), BGP, MPLS, BEEP, κ.α η εμφάνιση των οποίων φαίνεται να ακολουθεί το pattern μιας αλυσίδας από μετασχηματισμούς. Η βασική έννοια εδώ είναι το λεγόμενο Quantum of Automation το ονόμασα ΝΕΤ8model, είχα εντοπίσει τις έννοιες recursion, virtualization να απαρτίζουν το βασικό πλαίσιο αλλά δεν έβλεπα το επόμενο βήμα. Υπέβαλα σε δοκιμασία το μοντέλο προσπαθώντας να προβλέψω το "επόμενο βήμα" (δες σχετικό ποστάρισμα αγγλιστί σε έταιρο ιστολόγιο) Συνέχισα τη προσπάθεια κατανόησης του δικτύου σε συνεργασία με φοιτητές μέσα από ptixiakes και σταδιακά ωρίμασε περισσότερο η πρακτική εμπειρία που τροφοδοτεί με πραγματικά στοιχεία την θεωρητική ματιά. To 2009 έπεσα πάνω στο βιβλιο Patterns in Networking Architecture με συγγραφέα τον John Day να λέει ότι ψάχνει το θέμα "Τι είναι δίκτυο" για 35 χρόνια, αρχικά σαν φοιτητής στην ομάδα του ΑRPANET, αργότερα έγραψε RFCs, ειδικεύτηκε σε Protocol Formal Specification είναι δηλ. πιονιέρος και κάποια στιγμή το 1994 εντόπισε patterns για τις έννοιες δικτύωσης. Ηταν διαχειριστής του OSI specification μέχρι το 1990 και αξιολόγησε καλύτερα από εμένα τα θετικά του OSI που σαν developer το 1994 δήλωσα: OSI can Be Harmful Ο John Day λέει να προσδιορίζουμε πρώτα το "τι" και μετά το "πως" (αυτή είναι η λογική του DECLARATIVE) αν το κάνουμε τότε το TCP IP πάει περίπατο γιατί έχει το κόψιμο σε επίπεδα ανάποδα (οριζόντια αντί για κάθετα). Αριστερά της καθέτου θα είναι το δίκτυο Α και δεξιά το δίκτυο Β με διαφορετικές προδιαγραφές. Τώρα αν προκύψει κοινή εφαρμογή για τα δύο δίκτυα τότε θα γίνουν υπο-δίκτυα ενός μεγαλύτερου Γ σε ακτίνα δράσης. Το Γ θα είναι το επιπρόσθετο LAYER. Ενα είναι το LAYER !!! αλλά παίζει RECURSION κάνοντας ενθυλάκωση του εαυτού του μέσα σε ένα ίδιο LAYER – επίπεδο οπότε απλοποιείται ο μηχανισμός πέφτει το κόστος και έχουμε φορητότητα, ασφάλεια, αέναη κλιμάκωση κλπ. MODEL RINA LOUIS POUZIN SOCIETY Στις βασικές έννοιες στέκεται και ο ερευνητής Joe Touch από το ISI δημοσιεύοντας το 2011 μαζί με την ομάδα RINA του J.Day το μοντέλο DRUID – a Dynamic Recursive Unified Internet Design. Είχα κατα κάποιο τρόπο εντοπίσει το 2010 την σχέση Day (RINA 2008) Touch (RNA 2006) σε μια ομιλεία στο μεταπτυχιακό του ΣΕΜΦΕ ΕΜΠ στην ομάδα του Οξφορδιανού Πέτρου Στεφανέα, γκουρού του Formal Specification Group. Επιβεβαιώθηκα με την κοινή δημοσίευση του 2011. Το FUTURE INTERNET ASSEMBLY είχε επίσης τον John Day ως κύριο ομιλητή στο συνέδρια του φέτος και παρόμοια αναφορά είχε και το TERENA. Βασικές έννοιες λοιπόν όπως RINA, DRUID, NET8. (*) την αρχιτεκτονική της Καθολικής Μηχανής σε αντίθεση με την ιδέα για Μηχανή-ανά-πρόβλημα (**) στο πλαίσιο του προγράμματος ανακοινώθηκε το πολλά υποσχόμενο εργαλείο openflow