ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ (ΕΡΓΑΣΤΗΡΙΟ). 2 Εξοικείωση με πρωτόκολλο TCP Connection Oriented Αξιοπιστία στην παράδοση Σειρά Καθυστερήσεις Χαρακτηριστικά.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Δίκτυα υπολογιστών.
Advertisements

Υλοποίηση Συστήματος Ψηφοφορίας με τη χρήση Java RMI
Διαδίκτυο Κίκα Χρυσοστόμου.
Ιστορία του Ιντερνετ.
Διαχείριση Δικτύων Ευφυή Δίκτυα
Java: Socket API (Υποδοχές)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ
Ανάπτυξη Δικτύων Καθηγητής: Φουληράς Παναγιώτης
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Ενότητα Β: Εισαγωγή στο Διαδίκτυο Κουμπή Βασιλάντα, Ph.D, MSc.
Uniform Resource Locators (URLs) Ορισμός : URL (Uniform Resource Locator): Δείκτης σε μία πηγή πληροφοριών του Παγκοσμίου Ιστού (World Wide Web) Στη Java,
ΙΩΑΝΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΥ 3ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 19 ΟΚΤΩΒΡΙΟΥ 2012 ΑΙΘΟΥΣΑ Β4 1.
ΜΟΝΤΕΛΟ ΕΞΥΠΗΡΕΤΟΥΜΕΝΟΥ – ΕΞΥΠΗΡΕΤΗΤΗ ( CLIENT – SERVER )
Στογιάννου Αθανασία 1Ι-ΙΝΠΟ internet Στογιάννου Αθανασία web designer 2013 web designer 2013.
ΤCP/IP Τι είναι; Σύντομο Ιστορικό
Κεφάλαιο 11.2 Sockets.
Μποχρίνη Σταυρούλα ΑΜ:3173 Σταθόπουλος Αναστάσιος ΑΜ:3220.
Ντίρλης Νικόλαος- ΕΤΥ 3ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 25 ΟΚΤΩΒΡΙΟΥ 2013 ΑΙΘΟΥΣΑ Β4 1.
Socket API (σε γλώσσα C) Σύντομη Εισαγωγή Παναγιώτης Φουληράς.
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
7.7 Πρωτόκολλο ARP Δίκτυα Υπολογιστών ΙΙ.
Εισαγωγικά Θέματα WWW Δίκτυα Διανομής Περιεχομένου Τεχνολογίες, Παραδείγματα και Προοπτικές ΔΙΑΚΟΜΙΧΑΛΗΣ ΜΗΝΑΣ.
Κατανεμημένα Συστήματα με Java Ενότητα # 17: Μηνυματοστρεφές ενδιάμεσο λογισμικό Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής.
Κατανεμημένα Συστήματα με Java Ενότητα # 8: Μηχανισμοί Επικοινωνίας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 2: Ανάλυση Δικτυακής Κίνησης – Πρωτοκόλλων - Υπηρεσιών Εργαστήριο Διαχείρισης και Βέλτιστου Σχεδιασμού Δικτύων (NETMODE)
Μεταγωγή (Switching) Πως σχηματίζουμε διαδίκτυα. Περίληψη Μεταγωγή Κυκλωμάτων (Circuit switching) Μεταγωγή Πακέτων (Packet switching) Μεταγωγή Εικονικών.
7.8 Πρωτόκολλο DNS Δίκτυα Υπολογιστών ΙΙ.
Δίκτυα Ηλεκτρονικών Υπολογιστών
Μεταγωγή (Switching) Πως σχηματίζουμε διαδίκτυα. Περίληψη Μεταγωγή Κυκλωμάτων (Circuit switching) Μεταγωγή Πακέτων (Packet switching) Μεταγωγή Εικονικών.
HY-335 : Δίκτυα Υπολογιστών DHCP Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο
Τεχνολογία TCP/IP TCP/IP internet είναι ένα οποιοδήποτε δίκτυο το οποίο χρησιμοποιεί τα πρωτόκολλα TCP/IP. Διαδίκτυο (Internet) είναι το μεγαλύτερο δίκτυο.
Internet & Ηλεκτρονικό Εμπόριο Μάϊος 2001 NETMODE Network Management & Optimal Design Lab.
University of Cyprus Department of Computer Science Presenter : Yiannos Mylonas EPL475: Advanced Networks TCP/IP Socket Programming in C.
Κεφάλαιο 11.1 Uniform Resource Locators (URLs). Ορισμός : URL (Uniform Resource Locator): Δείκτης σε μία πηγή πληροφοριών του Παγκοσμίου Ιστού (World.
Streams Streams: κανάλια ροής δεδομένων Κανάλια εισόδου: ανάγνωση δεδομένων Κανάλια εξόδου: αποστολή δεδομένων Συνήθεις πηγές και προορισμοί δεδομένων:
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
ΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ201:
Σύνοψη 1 Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 4: Ανάλυση Δικτυακής Κίνησης – Πρωτοκόλλων - Υπηρεσιών Εργαστήριο Διαχείρισης και Βέλτιστου Σχεδιασμού Δικτύων (NETMODE)
Το μοντέλο πελάτη - εξυπηρετητή
Κωνσταντίνος Αντωνής © 2014Διαδικτυακός και Ταυτόχρονος Προγραμματισμός Ζητήματα Σχεδίασης Λογισμικού Πελάτη 1.
Κωνσταντίνος Αντωνής © 2014Διαδικτυακός και Ταυτόχρονος Προγραμματισμός Ομοιόμορφη Αποδοτική Διαχείριση του Ταυτοχρονισμού των Εξυπηρετητών 1.
1 ο Εργαστήριο: Κατασκευή Εφαρμογών Client-Server echoserver και echoclient – Κώδικας εφαρμογών σε C Μπαλόμπας Παναγιώτης 8ο ΕΠΑΛ Θεσσαλονίκης 1 /* Αρχείο.
Κεφάλαιο 7 Διαδικτύωση-Internet 7.3 Πρωτόκολλο TCP.
To πρωτόκολλο διαδικτύου IP -χρησιμοποιείται από αποστολέα και παραλήπτη που μπορεί να βρίσκονται σε διαφορετικά δίκτυα για να ανταλλάξουν πακέτα πληροφοριών.
ΖΑΚΑΛΚΑ ΖΩΗ ΑΕΜ: 3128 Επιβλέποντες Καθηγητές: Δρ. Σπυρίδων Α. Καζαρλής, Δρ. Κωνσταντίνος Σ. Χειλάς.
Διαχείριση Δικτύων - Ευφυή Δίκτυα,
Κατανεμημένα Συστήματα
Κεφάλαιο 4. Επίπεδο μεταφοράς
Κεφάλαιο 10: Υπηρεσίες και εφαρμογές Διαδικτύου
Κατανεμημένα Συστήματα
Δίκτυα Επικοινωνιών Ενότητα # 6: Επίπεδο Μεταφοράς TCP/UDP
Κεφάλαιο 7 Διαδικτύωση-Internet
ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ (ΕΡΓΑΣΤΗΡΙΟ)
Ειδικά Θέματα σε Κινητά & Ασύρματα Δίκτυα
ΥΠΗΡΕΣΙΕΣ ΚΑΙ ΕΦΑΡΜΟΓΕΣ ΔΙΑΔΙΚΤΥΟΥ 10.1 Υπηρεσίες Διαδικτύου
Κεφάλαιο 7 Διαδικτύωση- Internet
Ομοιόμορφη Αποδοτική Διαχείριση του Ταυτοχρονισμού των Εξυπηρετητών
Κεφάλαιο 7: Διαδικτύωση-Internet
Λύσεις Ασφάλειας στο Επίπεδο Διασύνδεσης
Κεφάλαιο 6o. Επίπεδο εφαρμογής
Κεφάλαιο 7:Διαδικτύωση-Internet
9.2 Δομή και υπηρεσίες του Διαδικτύου
Το μοντέλο πελάτη - εξυπηρετητή
Κεφάλαιο 7: Διαδικτύωση-Internet
9.3 υπηρεσίες του Διαδικτύου
Κεφάλαιο 10 Streams.
Server-side vs Client-side
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
Μεταγράφημα παρουσίασης:

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ (ΕΡΓΑΣΤΗΡΙΟ)

2 Εξοικείωση με πρωτόκολλο TCP Connection Oriented Αξιοπιστία στην παράδοση Σειρά Καθυστερήσεις Χαρακτηριστικά

3 Εξοικείωση με πρωτόκολλο TCP ServerSocket(int port) Δημιουργεί μία υποδοχή ροής για ένα server δεσμεύοντας την συγκεκριμένη port. Στην περίπτωση μιας port με τιμή 0 τότε δημιουργείται μία υποδοχή με την πρώτη ελεύθερη πόρτα. Socket accept() Αφουγκράζεται για κάποια αίτηση για σύνδεση και την αποδέχεται. Η μέθοδος μπλοκάρει έως ότου γίνει μία σύνδεση. Όταν γίνει μία σύνδεση επιστρέφεται μία υποδοχή (Socket) μέσω της οποίας ο εξυπηρετητής μιλά με τον συγκεκριμένο πελάτη που έκανε την αίτηση για σύνδεση. Socket Π.χ. ServerSocket serverSocket = new ServerSocket(10000); Κλάση ServerSocket sockets ServerSocket

4 Εξοικείωση με πρωτόκολλο TCP Socket(InetAddress address, int port) Δημιουργεί μία υποδοχή ροής και την συνδέει στην συγκεκριμένη port της συγκεκριμένης address. InputStream getInputStream() Επιστρέφει ένα InputStream για την ανάγνωση δεδομένων(bytes) από τη συγκεκριμένη υποδοχή ροής. Αν αυτή η υποδοχή ροής έχει ένα συσχετιζόμενο κανάλι τότε το παραγόμενο input stream μεταβιβάζει όλες του τις λειτουργίες στο κανάλι. Αν κλείσει το επιστρεφόμενο InputStream θα κλείσει και η υποδοχή ροής. OutputStream getOutputStream() Επιστρέφει ένα OutputStream για την εγραφη δεδομένων(bytes) στη συγκεκριμένη υποδοχή ροής. Αν αυτή η υποδοχή ροής έχει ένα συσχετιζόμενο κανάλι τότε το παραγόμενο output stream μεταβιβάζει όλες του τις λειτουργίες στο κανάλι. Αν κλείσει το επιστρεφόμενο OutputStream θα κλείσει και η υποδοχή ροής. InetAddress getInetAddress() Επιστρέφει την απομακρυσμένη διεύθυνση στην οποία η υποδοχή ροής είναι συνδεμένη ή null εάν αυτή η υποδοχή δεν είναι συνδεμένη. Κλάση Socket Π.χ. Socket socket = new Socket(…)

5 Well known port Server ServerSocket Random ports Socket Process Client Random port Socket Request Connection Εξοικείωση με πρωτόκολλο TCP Επικοινωνία με ένα Client

6 Well known port Server ServerSocket Socket Random ports Socket Process Client Random port Socket Request Connection Εξοικείωση με πρωτόκολλο TCP Επικοινωνία με περισσότερους Client : Client n Socket Random port

7 Εξοικείωση με πρωτόκολλο TCP Να υλοποιηθεί client – server μηχανισμός σύμφωνα με το πρωτόκολλο δικτύου TCP κατά τον οποίο ο client θα στέλνει μηνύματα στον server. Τα μηνύματα που θα αποστέλλονται θα είναι τυποποιημένα της μορφής: a) Signin: b) Message: c) MessageTo: : d) Users e) Signout Ο server θα πράττει, αναλόγως τα προθέματα, ως εξής: a) Θα αποθηκεύει το του χρήστη σε μια λίστα (εγγραφή στην υπηρεσία) με τους συνδεδεμένους χρήστες και θα ενημερώνει όλους τους συνδεδεμένους χρήστες για την είσοδο του. Σε περίπτωση που υπάρχει χρήστης με το ίδιο όνομα να μην εγγράφεται στην υπηρεσία και να του ζητείται νέο. b) Θα στέλνει το σε όλους τους συνδεδεμένους χρήστες. c) Θα στέλνει το μόνο στον. d) Θα επιστρέφει στον αποστολέα την λίστα με τους συνδεδεμένους χρήστες (μόνο usernames χωρισμένα με || ). e) Θα σβήνει το χρήστη από την λίστα των συνδεδεμένων χρηστών και θα ενημερώνει όλους τους συνδεδεμένους χρήστες για την αποχώρηση του. Προσέξτε τα παρακάτω Μόνο στον server χρειάζεται να δηλωθεί port στην οποία θα «αφουγκράζεται» για requested connections (ServerSocket). Η επικοινωνία γίνεται έπειτα μέσω των sockets. Ο Server θα πρέπει να κρατά ανοιχτά τα connections με κάθε client, γεγονός που σημαίνει ότι πρέπει να δημιουργεί ένα Thread για κάθε Client που συνδέεται, μέσω του οποίου θα τον εξυπηρετεί. Η μεταφορά των δεδομένων γίνεται μέσω των streams(input,output) των sockets σε κάθε πλευρά. Άσκηση