RSS    

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

        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). Каждый сервер определенного типа имеет  заданное уникальное

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.