При работе в сети, используя различные протоколы, взаимодействие между WS осуществляется по схеме "клиент-сервер". WS, принимающая запросы от других WS, и выполняющая их называется сервер, а WS посылающая их, называется клиент.
В сети может быть несколько серверов и клиентов. Фактически сервером или клиентом является не WS, а любая запущенная на ней программа. В зависимости о логики работы сервер и клиент могут поменяться местами. Процесс обмена сообщениями всегда начинает клиент. Для работы с протоколом IPX используется драйвер этого протокола, а также API этого протокола. Поэтому перед началом работы программы, необходимо проверить наличие этого протокола в ОЗУ и получить точку входа в его API. В дальнейшем программа вызывает драйвер при помощи команды межсегментного вызова процедуры, по адресу точки входа в API.
Функции IPX
API протокола IPX состоит из 11 функций, которые разбиваются на группы:
-
Функции для работы с socket’ами.
IPX Open Socket – открыть socket.
DX – номер socket’a.
AL – пит socket’a.
BX – 00h.
IPX Closed Socket – закрыть socket.
BX = 01
DX – номер закрываемого socket’а. -
Прием и передача пакетов.
IPX Listen For Packet – принять IPX пакет.
BX = 04h.
ES:DI – указатель на заполненный блок ECB.
IPX Send Packet – передать IPX пакет.
BX = 03h.
ES:DI – указатель на заполненный блок ECB. -
Специальные функции (для работы с сетевыми адресами).
IPX Get Internetwork Address – получить собственный адрес.
BX = 09h.
ES:DI
IPX Get Local Target – получить непосредственный адрес.
ES:DI – сетевой адрес станции получателя. - Специальные функции.
IPX Relinquish Control и другие.