на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


Реферат: Интранет сети


        return 1;

        }

int     ipx_cancel_event(struct ECB *ecb_ptr)

        {

        _ES = FP_SEG( (void far *) ecb_ptr);

        _SI = FP_OFF( (void far *) ecb_ptr);

        _BX = 0x0006;

        ipx_spx();

        _AH = 0;

        return _AX;

        }

void    close_socket(unsigned int socket)

        {

        if (ipx_spx_installed() < 1) return;

        _BX = 0x0001;

        _DX = socket;

        ipx_spx();

        }

int     open_socket(unsigned int socket)

        {

        if (ipx_spx_installed() < 1) return -1;

        _DX = socket;

        _BX = 0x0000;

        _AL = 0xFF;

        ipx_spx();

        _AH = 0;

        return _AX;

        }

int     get_local_target(unsigned char *dest_network,

                         unsigned char *dest_node,

                         unsigned int   dest_socket,

                         unsigned char *bridge_address)

        {

        unsigned int    temp_ax;

        struct  {

                unsigned char   network_number [4];

                unsigned char   physical_node  [6];

                unsigned int    socket;

                } request_buffer;

        struct  {

                unsigned char   local_target [6];

                } reply_buffer;

        memcpy(request_buffer.network_number, dest_network, 4);

        memcpy(request_buffer.physical_node, dest_node, 6);

        request_buffer.socket = dest_socket;

        _ES = FP_SEG( (void far *) &request_buffer);

        _SI = FP_OFF( (void far *) &request_buffer);

        _DI = FP_OFF( (void far *) &reply_buffer);

        _BX = 0x0002;

        ipx_spx();

        _AH = 0;

        temp_ax = _AX;

        memcpy(bridge_address, reply_buffer.local_target, 6);

        return temp_ax;

        }

void    let_ipx_breath(void)

        {

        _BX = 0x000A;

        ipx_spx();

        }

void    ipx_listen_for_packet(struct ECB *ecb_ptr)

        {

        _ES = FP_SEG( (void far *) ecb_ptr);

        _SI = FP_OFF( (void far *) ecb_ptr);

        _BX = 0x0004;

        ipx_spx();

        }

void    ipx_send_packet(struct ECB *ecb_ptr)

        {

        _ES = FP_SEG( (void far *) ecb_ptr);

        _SI = FP_OFF( (void far *) ecb_ptr);

        _BX = 0x0003;

        ipx_spx();

        }

int     get_internet_address(unsigned char connection_number,

                            unsigned char *network_number,

                            unsigned char *physical_node)

        {

        union REGS      regs;

        struct SREGS    sregs;

        struct  {

                unsigned int    len;

                unsigned char   buffer_type;

                unsigned char   connection_number;

                } request_buffer;

        struct  {

                unsigned int    len;

                unsigned char   network_number [4];

                unsigned char   physical_node  [6];

                unsigned int    server_socket;

                } reply_buffer;

        regs.h.ah = 0xe3;

        request_buffer.len = 2;

        request_buffer.buffer_type = 0x13;

        request_buffer.connection_number = connection_number;

        reply_buffer.len = 12;

        regs.x.si = FP_OFF( (void far *) &request_buffer);

        sregs.ds  = FP_SEG( (void far *) &request_buffer);

        regs.x.di = FP_OFF( (void far *) &reply_buffer);

        sregs.es  = FP_SEG( (void far *) &reply_buffer);

        int86x(0x21, &regs, &regs, &sregs);

        memcpy(network_number, reply_buffer.network_number, 4);

        memcpy(physical_node,  reply_buffer.physical_node,  6);

        regs.h.ah = 0;

        return regs.x.ax;

        }

unsigned int    get_1st_connection_num (char *who)

        {

        union REGS      regs;

        struct SREGS    sregs;

        struct  {

                unsigned int    len;

                unsigned char   buffer_type;

                unsigned int    object_type;

                unsigned char   name_len;

                unsigned char   name [47];

                } request_buffer;

        struct  {

                unsigned int    len;

                unsigned char   number_connections;

                unsigned char   connection_num [100];

                } reply_buffer;

        regs.h.ah = 0xe3;

        request_buffer.len = 51;

        request_buffer.buffer_type = 0x15;

        request_buffer.object_type = 0x0100;

        request_buffer.name_len    = (unsigned char) strlen(who);

        strcpy(request_buffer.name, who);

        reply_buffer.len = 101;

        regs.x.si = FP_OFF( (void far *) &request_buffer);

        sregs.ds  = FP_SEG( (void far *) &request_buffer);

        regs.x.di = FP_OFF( (void far *) &reply_buffer);

        sregs.es  = FP_SEG( (void far *) &reply_buffer);

        int86x(0x21, &regs, &regs, &sregs);

        if (regs.h.al != 0) return 0;

        if (reply_buffer.number_connections == 0) return 0;

        regs.h.ah = 0;

        regs.h.al = reply_buffer.connection_num[0];

        return regs.x.ax;

        }

unsigned char get_connection_number(void)

        {

        _AH = 0xDC;

        geninterrupt(0x21);

        return _AL;

        }

void    get_user_id(unsigned char connection_number,

                    unsigned char *user_id)

        {

        union REGS      regs;

        struct SREGS    sregs;

        struct  {

                unsigned int    len;

                unsigned char   buffer_type;

                unsigned char   connection_number;

                } request_buffer;

        struct  {

                unsigned int    len;

                unsigned char   object_id[4];

                unsigned char   object_type[2];

                char            object_name[48];

                char            login_time[7];

                } reply_buffer;

        regs.h.ah = 0xe3;

        request_buffer.len = 2;

        request_buffer.buffer_type = 0x16;

        request_buffer.connection_number = connection_number;

        reply_buffer.len = 61;

        regs.x.si = FP_OFF( (void far *) &request_buffer);

        sregs.ds  = FP_SEG( (void far *) &request_buffer);

        regs.x.di = FP_OFF( (void far *) &reply_buffer);

        sregs.es  = FP_SEG( (void far *) &reply_buffer);

        int86x(0x21, &regs, &regs, &sregs);

        strncpy(user_id, reply_buffer.object_name, 48);

        }

       2.6. Протокол последовательного обмена пакетами NetWare (SPX)

       Протокол обмена последовательными пакетами  (SPX)  строится  на

    основе IPX и предлагает дополнительные  услуги  Xerox's  Sequenced

    Packet Protocol (SPP). SPX дает возможность  прикладным программам

    рабочей станции NetWare получать  некоторые  преимущества  при ис-

    пользовании сетевых драйверов при прямых коммуникациях  с  другими

    рабочими станциями, серверами и устройствами интерсети  с дополни-

    тельной гарантией достоверности и последовательности пакетов.

       Внутренне SPX построен на дейтаграммных примитивах IPX  и  дает

    простой интерфейс, ориентированный на установление соединения.

       В дополнение к структуре IPX, SPX включает 12 байтов  блока уп-

    равления соединения.

               2.7. Программный интерфейс SPX

       В дополнение к программному интерфейсу IPX,  SPX  предоставляет

    следующие функции:

               a. проверка установки SPX;

               b. установка соединения;

               c. прослеживание соединения;

               d. окончание соединения;

               e. разрыв соединения;

               f. получение состояния соединения;

               g. посылка последовательного пакета;

               h. прослушивание (ожидание) последовательного пакета.

       Эти функции управляют установкой, поддержанием,  cбросом соеди-

    нения. Прикладные системы, использующие SPX не обязаны организовы-

    вать свои собственные схемы тайм-аутов  для  гарантирования воста-

    новления по обрыву установленного  соединения,  посылки последова-

    тельного пакета или по запросу об окончании соединения.


                            Формат пакета протокола SPX

                              0 1                15 ¦

                              г====================¬¦

                              ¦ контрольная сумма  ¦¦

                              ¦--------------------¦¦

                              ¦      длина         ¦¦

                              ¦---------T----------¦¦

                              ¦упр.транс¦тип пакетদ

                              ¦---------+----------¦¦

                              ¦-  сеть доставки   -¦¦

                              ¦--------------------¦¦

              Сетевой адрес   ¦-                  -¦¦

              доставки        ¦-  хост доставки   -¦¦

                              ¦--------------------¦¦Уровень 1

                              ¦   порт  доставки   ¦+---------

                              ¦--------------------¦¦адресация

                              ¦-  сеть отправителя-¦¦

                              ¦--------------------¦¦

              Сетевой адрес   ¦                   -¦¦

              отправителя     ¦- хост отправителя -¦¦

                              ¦-                  -¦¦

                              ¦--------------------¦¦

                              ¦ порт  отправителя  ¦¦

                              L====================-¦

                                                   -+

                              г==========T=========¬¦

                              ¦упр.соедин¦тип потоꦦ

                              ¦----------+---------¦¦

                              ¦идент.источ.соединен¦¦

                              ¦--------------------¦¦

                              ¦идент. приемника    ¦¦Уровень 2

                              ¦--------------------¦+---------

                              ¦  номер пакета      ¦¦протокол

                              ¦--------------------¦¦последова-

                              ¦номер подтверждения ¦¦тельных

                              ¦--------------------¦¦пакетов

                              ¦  номер размещения  ¦¦

                              L====================-¦

                                                   --

                              г====================¬¦

                              ¦    0 - 546 байтов  ¦¦Уровень 3

                              ¦                    ¦+---------

                              ¦ прозрачных данных  ¦¦управление

                              ¦         -----------¦¦

                              ¦         ¦доп.байт  ¦¦

                              L=========¦==========-¦

                                                   --

                              гTTT======T==========¬

                              ¦¦¦¦резерв¦тип потока¦

                              L+++======¦==========-

                              ¦¦¦¦конец сообщения

                              ¦¦¦внимание

                              ¦¦посылка подтверждений

                              ¦системный пакет

                                        Рис.2.4


               2.8. Управление потоком SPX

       Управление потоком является  средством,  позволяющим  уменьшить

    количество повторных передач пакетов. В таких случаях,  когда про-

    исходит тайм-аут без успешного подтверждения, SPX  выполняет опти-

    мальное количество повторов, прежде чем декларирует обрыв соедине-

    ния. SPX автоматически выбирает оптимальный  тайм-аут  и  значение

    количества повторов, которые наиболее подходят к физическим харак-

    тетистикам соответствующих сетевых устройств.  SPX  использует эв-

    ристический алгоритм тайминга  для  вычисления  оптимального коли-

    чества повторов, адаптируясь под время задержки пакетов.

       Протокол SPX предназначен для использования  в  качестве фунда-

    мента для всевозможных сложных прикладных систем, включая коммуни-

    кационные серверы, шлюзы и  системы  пересылки  сообщений  рабочих

    станций интерсети.

                2.9. Протокол объявления услуг

       Создавая открытую архитектуру, фирма Novell открывает разработ-

    чикам возможность добавлять к существующему набору  сетевых  услуг

    новые сервисы и услуги. Для облегчения таких разработок  среда ин-

    терсети NetWare включает в себя протокол и механизм,  который поз-

    воляет сетевым сервисным программам объявлять свои услуги по имени

    и типу интерсети NetWare.

       Серверы, использующие этот протокол, имеют свое имя, тип серви-

    са и адрес интерсети, та же самая информация существует  в маршру-

    тизаторах NetWare.

       Данный механизм позволяет  рабочей  станции  издать широковеща-

    тельный пакет запроса в локальную сеть для получения идентификации

    всех серверов любого типа, всех серверов специфического  типа  или

    только ближайшего сервера конкретного  типа  услуг.  Дополнительно

    рабочая станция может запросить любой сервер для получения  имен и

    адресов всех серверов данного конкретного типа.

       Весь этот  механизм  известен  как  протокол  объявления  услуг

    (SAP). Каждый сервер определенного типа имеет  заданное уникальное

    имя, которое позволяет клиенту выбирать среди  серверов определен-

    ный тип и определять желаемый сервер по имени, а не по  адресу ин-

    терсети.


               3. ПРОТОКОЛЫ  TCP/IP

               Соотношение пpотоколов TCP/IP и Модели Откpытых Систем

               Уpовни МОС                        Пpотоколы TCP/IP

          ------------------¬     --------T----T-----T-----T---------¬

          ¦                 ¦     ¦       ¦    ¦     ¦     ¦         ¦

          ¦Пpикладной       ¦     ¦Telnet ¦FTP ¦TFTP ¦SMTP ¦   DNS   ¦

          ¦                 ¦     ¦       ¦    ¦     ¦     ¦         ¦

          +-----------------+     ¦       ¦    ¦     ¦     +---------+

          ¦                 ¦     ¦       ¦    ¦     ¦     ¦         ¦

          ¦Пpедставительный ¦     ¦       ¦    ¦     ¦     ¦ Дpугие  ¦

          ¦                 ¦     ¦       ¦    ¦     ¦     ¦         ¦

          +-----------------+     +-------+----+---T-+-----+---------+

          ¦                 ¦     ¦                ¦                 ¦

          ¦Сеансовый        ¦     ¦         TCP    ¦       UDP       ¦

          ¦                 ¦     ¦                ¦                 ¦

          ¦                 ¦     ¦                ¦                 ¦

          ¦                 ¦     ¦                ¦                 ¦

          ¦Тpанспоpтный     ¦     ¦                ¦                 ¦

          ¦                 ¦     ¦                ¦                 ¦

          +-----------------+     +-------T--------+T----------------+

          ¦                 ¦     ¦ IP    ¦   ICMP  ¦ ---------------+

          ¦Сетевой          ¦     ¦       L---------- ¦  ARP    RARP ¦

          ¦                 ¦     ¦                   ¦              ¦

          +-----------------+     +----------T--------+--T-----------+

          ¦                 ¦     ¦          ¦           ¦           ¦

          ¦Канальный        ¦     ¦          ¦           ¦           ¦

          ¦                 ¦     ¦Ethernet  ¦Token Ring ¦ Дpугие    ¦

          +-----------------+     ¦          ¦           ¦           ¦

          ¦                 ¦     ¦          ¦           ¦           ¦

          ¦Физический       ¦     ¦          ¦           ¦           ¦

          ¦                 ¦     ¦          ¦           ¦           ¦

          L------------------     L----------+-----------+------------

                                    Рис.3.1.

       Уровневая структура модели позволяет разработчикам сетей сосре-

    доточиться на функциях конкретного уровня.  Другими  словами,  нет

    необходимости создавать все механизмы для  посылки  информации  по

    сети. Разработчикам нужно знать сервисы, которые должны быть обес-

    печены вышележащему уровню, какие сервисы нижележащего уровня дос-

    тупны, и какие протоколы модели обеспечивают эти сервисы.

       Сумму уровней протокольного набора часто  называют протокольным

    стеком (protocol stack) - см. pис .3.2.

       Таблица иллюстрирует некоторые  из  наиболее  общих  протоколов

    TCP/IP и сервисы, обеспечиваемые ими.

       Каждый уровень протокольного стека исходного компьютера взаимо-

    действует с соответствующим уровнем компьютера-адресата как равный

    с равным. С точки зрения программного обеспечения или пользователя

    передача данных имеет место так, словно равноправные


               Пpотоколы TCP/IP

               Хост-ЭВМ - источник                Хост-ЭВМ - адpесат

          ---------------¬                      --------------¬

          ¦ Пpикладной   ¦                      ¦ Пpикладной  ¦

          ¦              ¦                      ¦             ¦

          L-------T-------   сообщения или      L------T-------

                  ¦ ----------    потоки    -----------¦

           -------+------¬                      -------+------¬

           ¦Тpанспоpтный ¦                      ¦Тpанспоpтный ¦

           ¦             ¦                      ¦             ¦

           L------T-------  дейтагpаммы (UDP)   L------T-------

                  ¦ --------- или сегменты (TCP) ------¦

           -------+------¬                      -------+------¬

           ¦Межсетевой   ¦                      ¦ Межсетевой  ¦

           ¦(Интеpсеть)  ¦                      ¦  (Интеpсеть)¦

           L------T-------                      L------T-------

                  ¦ ---------- дейтагpаммы IP -------  ¦

           -------+------¬                      -------+------¬

           ¦Сетевой      ¦                      ¦ Сетевой     ¦

           ¦интеpфеис    ¦                      ¦ интеpфейс   ¦

           L------T-------                      L------T-------

                  ¦ ---------- кадpы сети ------------ ¦

                  ¦                                    ¦

                  ¦                                    ¦

                  ¦       -----------------------¬     ¦

                  L-------+ Сетевая аппаpатуpа   +------

                          L-----------------------

                                 Рис.3.2.

       уровни посылают свои пакеты непосредственно друг другу.

       Например, прикладная программа, посылающая файлы  с использова-

    нием TCP, выполняет следующие операции:

       - прикладной уровень передает поток байтов транспортному уровню

    на исходном компьютере; - транспортный уровень делит поток на сег-

    менты TCP, добавляя заголовок с последовательным  номером сегмента

    и передает сегмент межсетевому уровню (Internet-IP);

       - уровень IP создает пакет с порцией данных, содержащий сегмент

    TCP. Уровень добавляет заголовок пакета, содержащий  адреса источ-

    ника и получателя IP. Уровень определяет  также  физический  адрес

    компьютера - адресата или промежуточных компьютеров на пути к узлу

    - адресату и передает пакет уровню логической связи;

       - уровень звена данных передает пакет IP в порции  данных кадра

    уровня звена данных компьютеру - адресату. Здесь может иметь место

    направление пакета IP промежуточными системами;

       - на компьютере - адресате уровень звена данных удаляет заголо-

    вок уровня звена данных и передает пакет IP уровню IP;

       - уровень IP проверяет заголовок пакета  IP.  Если  контрольная

    сумма, содержащаяся в заголовке, не совпадает  с  контрольной сум-

    мой, вычесленной уровнем IP, пакет уничтожается;

       - если контрольные суммы совпадают, уровень IP удаляет


                   Набоp пpотоколов TCP/IP

           ------------------------T---------------------------------¬

           ¦     Пpотокол          ¦            Сеpвис               ¦

           +-----------------------+---------------------------------+

           ¦                       ¦                                 ¦

           ¦Internet Protocol (IP) ¦ Межсетевой пpотокол обеспечивает¦

           ¦                       ¦ сеpвис доставки пакетов между   ¦

           ¦                       ¦ узлами                          ¦

           ¦                       ¦                                 ¦

           ¦Internet Control       ¦ Межсетевой пpотокол упpавления  ¦

           ¦Message Protocol (ICMP)¦ сообщениями упpавляет пеpедачей ¦

           ¦                       ¦ упpавляющих сообщений и сообще- ¦

           ¦                       ¦ ний об ошибках между хост-ЭВМ и ¦

           ¦                       ¦ шлюзами                         ¦

           ¦                       ¦                                 ¦

           ¦Address Resolution     ¦ Пpотокол  pазpешения адpесов    ¦

           ¦Protokol (ARP)         ¦ мапиpует межсетевые адpеса в    ¦

           ¦                       ¦ физические                      ¦

           ¦                       ¦                                 ¦

           ¦Reverse Address        ¦ Обpатный пpотокол pазpешения    ¦

           ¦Resolution Protocol    ¦ адpесов мапиpует физические     ¦

           ¦(RARP)                 ¦ адpеса в интеpсетевые           ¦

           ¦                       ¦                                 ¦

           ¦Transmission  Control  ¦ Пpотокол упpавления пеpедачей   ¦

           ¦Protocol (TCP)         ¦ обеспечивает сеpвис  надежной   ¦

           ¦                       ¦ доставки потока между клиен-    ¦

           ¦                       ¦ тами                            ¦

           ¦                       ¦                                 ¦

           ¦User Datagram          ¦ Пользовательский дейтагpаммный  ¦

           ¦Protocol (UDP)         ¦ пpотокол обеспечивает ненадеж-  ¦

           ¦                       ¦ ный сеpвис доставки пакетов без ¦

           ¦                       ¦ установления соединения между   ¦

           ¦                       ¦ клиентами                       ¦

           ¦                       ¦                                 ¦

           ¦File Transfer          ¦ Пpотокол тpанспоpта файлов      ¦

           ¦Protocol (FTP)         ¦ обеспечивает услуги тpанспоpта  ¦

Страницы: 1, 2, 3, 4, 5


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.