скачать рефераты
  RSS    

Меню

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

скачать рефераты

скачать рефератыРеферат: Интранет сети

    ке, в котором он покидает отправителя. Перед началом передачи при-

    ложения на обоих концах получают порты TCP от  своих  операционных

    систем. Эти порты аналогичны тем,  что  использует  протокол  UDP.

    Приложение, начинающее передачу, известно  как  активная  сторона,

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

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

    ко известный порт TCP на пассивной стороне.  Подобно  дейтаграммам

    UDP, сегменты TCPвключаются в дейтаграммы IP. TCP буферизует поток

    ожиданием достаточного количества данных  для  заполнения  большой

    дейтаграммы перед ее посылкой. Поток неструктурирован, что означа-

    ет, что посылающая и принимающая стороны (приложения)  до передачи

    должны установить соглашения относительно содержимого  потока. TCP

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

       Протокол TCP присваивает каждому сегменту  последовательный но-

    мер. На приемном конце виртуального канала  приложение  проверяеет

    последовательность намеров для определения того, все  ли  сегменты

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

    приемный конец получает следующий сегмент  последовательности,  он

    посылает квитанцию - подтверждение узлу - источнику. Когда  узел -

    источник получает подтверждение, он индицирует приложению  то, что

    сегмент успешно передан. Если узел - источник в течение определен-

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

    ответствующий  сегмент.  Эта  схема,   называемая   "положительное

    подтверждение с повторной передачей", обеспечивает  надежность пе-

    редачи.

               3.7. Транспортная система TCP/IP в NetWare версии 3.11

       Транспортная система TCP/IP обеспечивает  возможности подключе-

    ния к сетям с этими протоколами для сетей фирмы Novell.  На файло-

    вом сервере TCP/IP включает в себя набор NLM для поддержки возмож-

    ностей маршрутизации IP и построения интерсетей, поддержки функци-

    онирования приложений, таких как NetWare NFS, возможность проклад-

    ки туннелей IPX через интерсети IP. Дополнительно TCP/IP обеспечи-

    вает транспортный интерфейс, используемый как NFS, так  и  другими

    приложениями, написанными для интерфейсов типа сокет  4.3BSD  UNIX

    или AT&T Streams Transport Layer Interface  (TLI).  NetWare  v3.11

    TCP/IP включает следующие загружаемые модули и файлы базы данных:

                NLM NetWare TCP/IP (TCPIP.NLM)

                The Simple Network Management Protocol NLM

                 (SNMP.NLM)

                The SNMP event logger NLM (SNMPLOG.NLM)

                The TCP/IP Console NLM (TCPCON.NLM)

                The IP configuration NLM (IPCONFIG.NLM)

                The IPX/IP Tunnel module (IPTUNNEL.LAN)

                Sample Internet database files (GATEWAYS, HOSTS,

                 NETWORKS, PROTOCOL, and SERVICES)

          Архитектура TCP/IP приведена на рис.3.6.


                   Архитектура TCP/IP в NetWare

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

          ¦                                                          ¦

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

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

          ¦¦ Другие    ¦  ¦ TCPCON  ¦   ¦ SNMPLOG  ¦  ¦ Другие      ¦¦

          ¦¦ приложения¦  ¦         ¦   ¦          ¦  ¦ приложения  ¦¦

          ¦¦ TLI       ¦  ¦         ¦   ¦          ¦  ¦ для сокетов ¦¦

          ¦L-----T------  L----T-----   L-----T-----  L------T-------¦

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

          ¦      ¦                                           ¦       ¦

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

          ¦     \¦/              ¦            ¦             \¦/      ¦

          ¦--------------¬       ¦            ¦       -------+------¬¦

          ¦¦ Интерфейс   ¦       ¦   NetWare  ¦       ¦ Сокеты      ¦¦

          ¦¦ транспортн  ¦       ¦     NFS    ¦       ¦ BSD         ¦¦

          ¦¦ уровня TLI  ¦       ¦            ¦       ¦             ¦¦

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

          ¦      ¦                      ¦                    ¦       ¦

          ¦     \¦/                    \¦/                  \¦/      ¦

          ¦------+----------------------+--------------------+------¬¦

          ¦¦    Транспортная система TCP/IP NetWare                 ¦¦

          ¦L--------------------------T------------------------------¦

          ¦                           ¦                              ¦

          ¦           ----------------+----------------¬             ¦

          ¦           ¦Открытый интерфейс ODI          ¦             ¦

          ¦           L----T----------T----------T------             ¦

          ¦      -----------         \¦/         L-----------¬       ¦

          ¦ -----+----¬        -------+------¬         ------+----¬  ¦

          ¦ ¦ Драйвер ¦        ¦   Драйвер   ¦         ¦  Драйвер ¦  ¦

          ¦ ¦ Ethernet¦        ¦  Token Ring ¦         ¦  ARCnet  ¦  ¦

          ¦ L----T-----        L------T-------         L-----T-----  ¦

          ¦     \¦/                  \¦/                    \¦/      ¦

          ¦------+--------¬   --------+---------¬     -------+-----¬ ¦

          ¦¦  Адаптер     ¦   ¦   Адаптер       ¦     ¦  Адаптер   ¦ ¦

          ¦¦              ¦   ¦                 ¦     ¦            ¦ ¦

          ¦¦  Ethernet    ¦   ¦  Token Ring     ¦     ¦  Arcnet    ¦ ¦

          ¦L---------------   L------------------     L------------- ¦

          ¦                                                          ¦

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

                                    Рис.3.6.

       Программное обеспечение TCP/IP позволяет  реализовать различные

    конфигурации сетей IP IPX.

       Сеть IP (серверы и клиенты UNIX) могут  взаимодействовать между

    собой, используя протокол TCP/IP, в одной физической сети с серве-

    рами и клиентами NetWare. Пример такой сети Ethernet с адресом се-

    ти IP 129.1.0.0 и с адресом сети IPX 84404556 приведен  на рисунке

    3.7.


                   Совместная работа TCP/IP и SPX/IPX

            г================¬

            ¦ NetWare Server ¦  ---------------¬

            ¦                ¦  ¦ UNIX Server  ¦

            L=========T======-  L-------T-------

            129.1.0.3 ¦                 ¦ 129.1.0.1

                      ¦                 ¦

                      ¦IPX Net=84404556 ¦    IP Net=129.1.0.0

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

                  ¦                ¦                 ¦

                  ¦                ¦                 ¦

            ------+--------¬  -----+---------¬       ¦ 129.1.0.2

            ¦NetWare Client¦  ¦NetWare Client¦  -----+-----------¬

            ¦              ¦  ¦              ¦  ¦UNIX Workstation¦

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

                                  Рис.3.7.

       Сети IP и IPX могут подключаться к одному серверу NetWare. Кли-

    енты UNIX могут использовать файловое пространство  сервера  с по-

    мощью Netware NFS (рис.3.8.).

                  Подключение сетей TCP/IP и SPX/IPX к серверу

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

            ¦Рабочая станция UNIX¦      ¦ Сервер UNIX ¦

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

                      ¦129.1.0.2              ¦129.1.0.1

                      ¦                       ¦

                      ¦                       ¦Сеть IP=129.1.0.0

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

                              129.1.03 ¦

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

                              ¦  Сервер NetWare  ¦

                              L=========T========-

                                        ¦

                  Сеть IPX = 84404556   ¦       Сеть Token Ring

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

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

                       ¦                                    ¦

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

                ¦Клиент NetWare¦                     ¦Клиент NetWare¦

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

                                  Рис.3.8.

       Есть возможность маршрутизации пакетов IP через сервер NetWare.

    На рис.3.9. TCP/IP в сервере Netware 1  обеспечивают маршрутизацию

    пакетов IP, давая возможность клиентам UNIX из  сети  IP  Ethernet

    работать с сервером Netware 2.

                  Маршрутизация пакетов IP через сервер NetWare

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

            ¦Рабочая станция UNIX¦      ¦ Сервер UNIX ¦

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

                      ¦129.1.0.2              ¦129.1.0.1

                      ¦                       ¦

                      ¦                       ¦Сеть IP=129.1.0.0

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

                              129.1.03 ¦

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

                              ¦  Сервер NetWare 1¦

                              L=========T========-

                                        ¦

                  Сеть IPX = 84404556   ¦       Сеть Token Ring

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

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

                     ¦                  ¦                 ¦

              -------+-------¬  г=======¦========¬ -------+-------¬

              ¦Клиент NetWare¦  ¦Сервер NetWare 2¦ ¦Клиент NetWare¦

              L---------------  L================- L---------------

                                     Рис.3.9.

       Включив в состав сети IP, изображенной на рис.3.10.-, маршрути-

    затор IP можно обеспечить выход в глобальную интерсеть IP.

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

    действие сетей IPX через интерсеть  IP.  Туннель  IP  представляет

    стандартный интерфейс драйвера локальной сети для системы NetWare.

    Сама интерсеть IP является средой передачи. В этом смысле адрес IP

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

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

    сетей IPX через интерсеть IP приведен на рис.3.10.

               Взаимодействие сетей NetWare через туннель IP

                          Туннель IP                 г============¬

                               ¦                     ¦  Сеть IPX  ¦

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

                               ¦                            ¦

            -----------------¬ ¦ г============¬   ----------+------¬

            ¦ Сервер NetWare +-+-¦Интерсеть IP¦---+ Сервер NetWare ¦

            ¦                +---¦            ¦-T-+                ¦

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

                     ¦                          ¦

                     ¦                          ¦

            г========¦=======¬              Туннель IP

            ¦   Сеть IPX     ¦

            L================-

                                    Рис.3.10.

                 4. ОБМЕН СООБЩЕНИЯМИ В СЕТИ.

       Две программы, работающие на разных узлах  сети,  могут обмени-

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

    невый драйвер сети и пересылка сообщений через общий файл-сервер.

       Пример программы, посылающей сообщение на консоль сервера :

Uses Dos;

var k : integer;

sendString : string;

Procedure SendToCon(Message : string);

var

  reg : registers;

  s   : array [0..64] of byte;

  i   : integer;

begin

  s[0] := 0;

  s[1] := 4;

  s[2] := $09;

  s[3] := length(Message);

  for i := 1 to Length(Message) do

    s[i+3] := ord(Message[i]);

  reg.ah := $0E1;

  reg.bx := reg.ds;

  reg.ds := seg(s);

  reg.si := ofs(s);

  intr($21,reg);

  reg.ds := reg.bx;

end;

begin

  If ParamCount = 0 then

    begin

      Writeln('Send message to console utility by S.Perevoznik, 1993');

      Writeln('Usage : ssend <message>');

      halt;

    end;

  for k := 1 to paramcount do

begin

   SendString := SendString + Paramstr(k) + ' ';

end;

  SendToCon(sendString);

  Writeln('Message send to console ...');

end.

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

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

{$F+,O+}

Unit UICNet;

Interface

Uses Dos;

Function GetUserName(ConnectionNumber : byte;

                     Var ObjectFree : boolean) : string;

Function LocalDisk : boolean;

Procedure SendBroadcastMessage(Message:string;ConnectionNumber:byte);

Implementation

Function GetUserName(ConnectionNumber : byte;

                     Var ObjectFree : boolean) : string;

  var

    WordPtr:^Word;

    r           : registers;

    SendPacket  : array[0..4] of byte;

    ReplyPacket : array[0..64] of byte;

    UserName    : string;

    ObjectType  : word;

function GetWord(P: pointer): word;

  var

    WordPtr :^word;

    begin

      WordPtr := P;

      GetWord := swap(WordPtr^);

   end;

    begin

      SendPacket[2] := $16;

      SendPacket[3] := ConnectionNumber;

      WordPtr := addr(SendPacket);

      WordPtr^:=2;

      WordPtr := addr(SendPacket);

      WordPtr^ := 62;

      r.ah := $e3;

      r.ds := seg(SendPacket);

      r.si := ofs(SendPacket);

      r.es := seg(ReplyPacket);

      r.di := ofs(ReplyPacket);

      intr($21,r);

      if r.al = 0

        then

        begin

          ObjectType := GetWord(addr(ReplyPacket[6]));

          if ObjectType = 0 then ObjectFree := true

            else

              ObjectFree := false;

          move(ReplyPacket[8],UserName[1],48);

          UserName[0] := chr(48);

          GetUserName := Username;

       end;

          end;

Function LocalDisk : boolean;

var r : registers;

   begin

    r.ah := $19;

    intr($21,r);

    r.dl := r.al+1;

    r.ah := $e9;

    r.al := 0;

    r.dh := 0;

    intr($21,r);

    if r.ah = 128 then localdisk := true

      else localdisk := false;

  end;

Procedure SendBroadcastMessage(Message:string; ConnectionNumber:byte);

  var

    r           : registers;

    WordPtr     : ^word;

    SendPacket  : array [0..160] of byte;

    ReplyPacket : array [0..103] of byte;

  begin

   SendPacket[2] := 0;

   SendPacket[3] := 1;

   SendPacket[4] := ConnectionNumber;

   SendPacket[5] := length(Message);

   move(Message[1],SendPacket[6],length(Message));

   WordPtr := addr(SendPacket);

   WordPtr^ := Length(Message) + 4;

   r.ah := $e1;

   r.ds := seg(SendPacket);

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


Новости

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

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

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.