Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ201:

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ201:"— Μεταγράφημα παρουσίασης:

1 ΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ nickie@softlab.ntua.gr Διδάσκων: Νίκος Παπασπύρου http://www.softlab.ntua.gr/~nickie/TUC/log201/ 1Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Διαφάνειες παρουσίασης #12 4 Επικοινωνία μεταξύ υπολογιστών 4 Πελάτες και εξυπηρετητές 4 Υποδοχές

2 2Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Επικοινωνία μεταξύ υπολογιστών u Οι διεργασίες που επικοινωνούν εκτελούνται σε διαφορετικούς υπολογιστές u Η επικοινωνία των εφαρμογών βασίζεται στο λειτουργικό σύστημα, που διαχειρίζεται τη φυσική επικοινωνία μέσω δικτύου Υπολογιστής 2Υπολογιστής 1 Διεργασία 1 Διεργασία 2 δίκτυο

3 3Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υπολογιστής ΓΥπολογιστής B Υπολογιστής Α Πελάτες και εξυπηρετητές u Client-Server u Ιδιαίτερη φιλοσοφία ανάπτυξης εφαρμογών Εφαρμογή εξυπηρετητής Εφαρμογή πελάτης 1 Εφαρμογή πελάτης 2 Εφαρμογή πελάτης 3 Internet τοπικό δίκτυο

4 4Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υποδοχές(i) u Sockets u Επιτυγχάνουν επικοινωνία μεταξύ διεργασιών που εκτελούνται l είτε στον ίδιο υπολογιστή l είτε σε διαφορετικούς υπολογιστές μέσω δικτύου u Ξεκίνησαν από το BSD Unix u Υλοποιούνται και στο Unix System V.4

5 5Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υποδοχές(ii) u Υποδοχή με σύνδεση (SOCK_STREAM) socket bind listen accept sendrecv shutdown close socket connect sendrecv shutdown close Εξυπηρετητής Πελάτης

6 6Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υποδοχές(iii) u Υποδοχή χωρίς σύνδεση (SOCK_DGRAM) socket bind sendtorecvfrom close Και οι δυο πλευρές

7 7Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υποδοχές(iv) u Δημιουργία νέας υποδοχής int socket (int domain, int type, int protocol); u Σύνδεση με όνομα int bind (int sid, struct sockaddr * s, int slen); u Δομή sockaddr l Είδος υποδοχής: Unix / Internet l Διαφοροποιείται ανάλογα με το είδος Unix: πλήρης θέση αρχείου Internet: διεύθυνση και αριθμός πόρτας

8 8Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υποδοχές(v) u Αρχικοποίηση για εξυπηρέτηση int listen (int sid, int size); u Αίτηση σύνδεσης int connect (int sid, struct sockaddr * s, int slen); u Αποδοχή σύνδεσης int accept (int sid, struct sockaddr * s, int * slen); u Κλείσιμο σύνδεσης int shutdown (int sid, int mode); u Κλείσιμο υποδοχής int close (int sid);

9 9Νίκος ΠαπασπύρουΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Υποδοχές(vi) u Αποστολή πληροφοριών int send (int sid, const char * buf, int len, int flag); int sendto (int sid, const char * buf, int len, int flag, struct sockaddr * s, int * slen); u Λήψη πληροφοριών int recv (int sid, char * buf, int len, int flag); int recvfrom (int sid, char * buf, int len, int flag, struct sockaddr * s, int * slen);


Κατέβασμα ppt "ΛΟΓ201: Τεχνολογία Λογισμικού ΙΙ Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ201:"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google