🗊Презентация Архитектура клиента

Нажмите для полного просмотра!
Архитектура клиента, слайд №1Архитектура клиента, слайд №2Архитектура клиента, слайд №3Архитектура клиента, слайд №4Архитектура клиента, слайд №5Архитектура клиента, слайд №6Архитектура клиента, слайд №7Архитектура клиента, слайд №8Архитектура клиента, слайд №9Архитектура клиента, слайд №10Архитектура клиента, слайд №11Архитектура клиента, слайд №12Архитектура клиента, слайд №13Архитектура клиента, слайд №14Архитектура клиента, слайд №15Архитектура клиента, слайд №16

Вы можете ознакомиться и скачать презентацию на тему Архитектура клиента. Доклад-сообщение содержит 16 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1


Архитектура клиента, слайд №1
Описание слайда:

Слайд 2





Определение местонахождения сервера
доменное имя или IP-адрес сервера могут быть заданы в виде константы во время трансляции клиентской программы;
клиентская программа может требовать у пользователя указывать имя сервера при ее вызове;
информация о местонахождении сервера предоставляется из постоянного хранилища данных ( файл, база данных);
для поиска сервера используется отдельный протокол.
Описание слайда:
Определение местонахождения сервера доменное имя или IP-адрес сервера могут быть заданы в виде константы во время трансляции клиентской программы; клиентская программа может требовать у пользователя указывать имя сервера при ее вызове; информация о местонахождении сервера предоставляется из постоянного хранилища данных ( файл, база данных); для поиска сервера используется отдельный протокол.

Слайд 3





Алгоритм клиента TCP:
1.Найти IP-адрес и номер порта протокола сервера, с которым необходимо установить связь.
2.Распределить сокет.
3.Указать, что для соединения нужен произвольный, неиспользуемый порт протокола на локальном компьютере и позволить ПО TCP выбрать такой порт.
4.Подключить сокет к серверу.
5.Выполнить обмен данными с сервером по протоколу прикладного уровня.
6.Закрыть соединение.
Описание слайда:
Алгоритм клиента TCP: 1.Найти IP-адрес и номер порта протокола сервера, с которым необходимо установить связь. 2.Распределить сокет. 3.Указать, что для соединения нужен произвольный, неиспользуемый порт протокола на локальном компьютере и позволить ПО TCP выбрать такой порт. 4.Подключить сокет к серверу. 5.Выполнить обмен данными с сервером по протоколу прикладного уровня. 6.Закрыть соединение.

Слайд 4





Синтаксис
–сначала записывается имя, а вторым параметром – порт;
–имя и порт рассматриваются как один параметр, разделенный двоеточием.
Описание слайда:
Синтаксис –сначала записывается имя, а вторым параметром – порт; –имя и порт рассматриваются как один параметр, разделенный двоеточием.

Слайд 5






Gethostbyname
getservbyname 
Getprotobyname
sockaddr_in 
socket 
int socket(int domain, int type, int protocol) - дескриптор
Описание слайда:
Gethostbyname getservbyname Getprotobyname sockaddr_in socket int socket(int domain, int type, int protocol) - дескриптор

Слайд 6





#include <stdio.h> 
#include <stdio.h> 
#include <errno.h>
#include <string.h>
#include <netdb.h>
#include <sys/types.h>
#include <sys/socket.h>
char * host = "localhost";
char * service = "imap";
char * proto = "tcp";
struct sockaddr_in sin;
Описание слайда:
#include <stdio.h> #include <stdio.h> #include <errno.h> #include <string.h> #include <netdb.h> #include <sys/types.h> #include <sys/socket.h> char * host = "localhost"; char * service = "imap"; char * proto = "tcp"; struct sockaddr_in sin;

Слайд 7





int mksock( char *host, char * service, char * proto, struct sockaddr_in *sin)
int mksock( char *host, char * service, char * proto, struct sockaddr_in *sin)
{
struct hostent *hptr;
struct servent *sptr;
struct protoent *pptr;
int sd=0, type; 
memset( sin, 0, sizeof( *sin)); 
sin->sin_family = AF_INET; 
if( hptr = gethostbyname( host))
memcpy( & sin->sin_addr, hptr->h_addr, hptr->h_length); 
else
Описание слайда:
int mksock( char *host, char * service, char * proto, struct sockaddr_in *sin) int mksock( char *host, char * service, char * proto, struct sockaddr_in *sin) { struct hostent *hptr; struct servent *sptr; struct protoent *pptr; int sd=0, type; memset( sin, 0, sizeof( *sin)); sin->sin_family = AF_INET; if( hptr = gethostbyname( host)) memcpy( & sin->sin_addr, hptr->h_addr, hptr->h_length); else

Слайд 8





return -1; 
return -1; 
if ( ! ( pptr = getprotobyname( proto)) )
return -1; 
if( sptr = getservbyname( service, proto))
sin->sin_port = sptr->s_port; 
else if( (sin->sin_port = 
htons(( unsigned short) atoi (service))) == 0)
return -1; 
if ( strcmp( proto, "udp") == 0)
type = SOCK_DGRAM;
Описание слайда:
return -1; return -1; if ( ! ( pptr = getprotobyname( proto)) ) return -1; if( sptr = getservbyname( service, proto)) sin->sin_port = sptr->s_port; else if( (sin->sin_port = htons(( unsigned short) atoi (service))) == 0) return -1; if ( strcmp( proto, "udp") == 0) type = SOCK_DGRAM;

Слайд 9





else
else
type = SOCK_STREAM; 
if ( (sd = socket( PF_INET, type, pptr->p_proto)) < 0) 
{
perror( "Ошибка при распределении сокета");
return -1; 
} 
return sd;
}
Описание слайда:
else else type = SOCK_STREAM; if ( (sd = socket( PF_INET, type, pptr->p_proto)) < 0) { perror( "Ошибка при распределении сокета"); return -1; } return sd; }

Слайд 10





4 задачи:
проверяет, является ли сокет действительным и не был ли он подключен;
заполняет поле адреса конечной точки в дескрипторе сокета (из 2-го параметра);
выбирает локальный адрес в дескрипторе сокета, если он еще не задан;
инициирует соединение TCP и возвращает результат в вызывающую  программу.
Описание слайда:
4 задачи: проверяет, является ли сокет действительным и не был ли он подключен; заполняет поле адреса конечной точки в дескрипторе сокета (из 2-го параметра); выбирает локальный адрес в дескрипторе сокета, если он еще не задан; инициирует соединение TCP и возвращает результат в вызывающую программу.

Слайд 11





Вызов connect инициирует соединение локального сокета с удаленным :
		
		int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen)
Описание слайда:
Вызов connect инициирует соединение локального сокета с удаленным : int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen)

Слайд 12





send 
send 
recv 
		int send(int s, const void *msg, size_t len,intflags);
		int recv(int s, void *buf, size_t len, int flags).
Описание слайда:
send send recv int send(int s, const void *msg, size_t len,intflags); int recv(int s, void *buf, size_t len, int flags).

Слайд 13





		Для обхода этой проблемы во многих реализациях интерфейса сокетов реализована функция shutdown:
		Для обхода этой проблемы во многих реализациях интерфейса сокетов реализована функция shutdown:
		int shutdown ( int sd, int how)
		где how принимает значения SHUT_RD, SHUT_WR, SHUT_RDWR (0, 1, 2 соответственно, однако рекомендовано использовать символьные константы), для закрытия сокета в одном из направлений. Для слушающего сокет это выглядит как конец файла.
Описание слайда:
Для обхода этой проблемы во многих реализациях интерфейса сокетов реализована функция shutdown: Для обхода этой проблемы во многих реализациях интерфейса сокетов реализована функция shutdown: int shutdown ( int sd, int how) где how принимает значения SHUT_RD, SHUT_WR, SHUT_RDWR (0, 1, 2 соответственно, однако рекомендовано использовать символьные константы), для закрытия сокета в одном из направлений. Для слушающего сокет это выглядит как конец файла.

Слайд 14





Алгоритм клиента UDP:
1.Найти IP-адрес и номер порта протокола сервера, с которым необходимо установить связь.
2.Распределить сокет.
3.Указать, что для соединения нужен произвольный, неиспользуемый порт протокола на локальном компьютере и позволить программному обеспечению UDP выбрать такой порт.
4.Указать сервер, на который должны передаваться сообщения.
5.Выполнить обмен данными с сервером по протоколу прикладного уровня.
6.Закрыть сокет.
Описание слайда:
Алгоритм клиента UDP: 1.Найти IP-адрес и номер порта протокола сервера, с которым необходимо установить связь. 2.Распределить сокет. 3.Указать, что для соединения нужен произвольный, неиспользуемый порт протокола на локальном компьютере и позволить программному обеспечению UDP выбрать такой порт. 4.Указать сервер, на который должны передаваться сообщения. 5.Выполнить обмен данными с сервером по протоколу прикладного уровня. 6.Закрыть сокет.

Слайд 15





Тест 2
1) назовите 3 уровня разделения приложений?
2) на каком уровне происходит управление клавиатурой, дисплеем?
3) протоколы TCP/IP обеспечивают а) многоранговую б) одноранговую связь?
4) какого распределения не существует: вертикального, горизонтального, диагонального, однорангового?
5) как называется распределение когда сервера может не быть вообще?
6) какая картинка изображает трехзвездную архитектуру клинет сервер?
Описание слайда:
Тест 2 1) назовите 3 уровня разделения приложений? 2) на каком уровне происходит управление клавиатурой, дисплеем? 3) протоколы TCP/IP обеспечивают а) многоранговую б) одноранговую связь? 4) какого распределения не существует: вертикального, горизонтального, диагонального, однорангового? 5) как называется распределение когда сервера может не быть вообще? 6) какая картинка изображает трехзвездную архитектуру клинет сервер?

Слайд 16


Архитектура клиента, слайд №16
Описание слайда:



Похожие презентации
Mypresentation.ru
Загрузить презентацию