Sdílet prostřednictvím


Síťové programovací rozhraní

Rozhraní síťového programovánínebo NPI definuje rozhraní mezi síťovými moduly, které lze vzájemně připojit. Klientský modul , který je zaregistrovaný jako klient konkrétního NPI, je možné připojit pouze k modulům poskytovatele , které jsou zaregistrované jako poskytovatelé stejného NPI. Podobně je možné připojit modul poskytovatele, který je zaregistrovaný jako poskytovatel konkrétního NPI, pouze k klientským modulům registrovaným jako klienti stejného npI.

Každá NPI definuje následující položky:

  • Identifikátor npi , který jednoznačně identifikuje NPI. Síťový modul určuje identifikátor NPI, který označuje konkrétní NPI, který podporuje, když se síťový modul zaregistruje u registrátora síťového modulu (NMR). Síťový modul může podporovat více NPI tím, že se několikrát zaregistruje v NMR, jednou pro každý NPI, který podporuje. NMR zahájí připojení klientského modulu k modulu poskytovatele pouze v případě, že obě podporují stejnou NPI.

  • Volitelná struktura charakteristik klienta , která určuje specifické charakteristiky pro NPI každého klientského modulu. Takové charakteristiky specifické pro NPI můžou zahrnovat položky, jako jsou verze (nebo verze) NPI, které klientský modul podporuje nebo jakou řadu adres nebo protokol vyžaduje klientský modul. Modul zprostředkovatele může pomocí informací obsažených ve struktuře vlastností klienta klientského modulu určit, jestli se připojí k klientskému modulu. Pokud NPI nedefinuje žádné vlastnosti klienta specifické pro NPI, není tato struktura nutná.

  • Volitelná struktura charakteristik poskytovatele , která určuje charakteristiky specifické pro NPI každého modulu poskytovatele. Takové charakteristiky specifické pro NPI můžou zahrnovat položky, jako jsou verze (nebo verze) NPI, které modul poskytovatele podporuje, nebo které adresy nebo protokoly modul poskytovatele podporuje. Klientský modul může pomocí informací obsažených ve struktuře vlastností klienta modulu poskytovatele určit, jestli se připojí k modulu zprostředkovatele. Pokud NPI nedefinuje žádné vlastnosti zprostředkovatele specifické pro NPI, není tato struktura nutná.

  • Nulové nebo více funkcí zpětného volání klientského modulu. Po úspěšném připojení modulu zprostředkovatele k klientskému modulu má modul zprostředkovatele přístup k funkcím klientského modulu zavoláním funkcí zpětného volání klientského modulu.

  • Jedna nebo více funkcí modulu zprostředkovatele. Po úspěšném připojení klientského modulu k modulu zprostředkovatele má klientský modul přístup k funkcím modulu zprostředkovatele voláním funkcí modulu zprostředkovatele.

  • Struktura dispečerské tabulky klienta , která obsahuje ukazatele na funkce pro každou z funkcí zpětného volání klientského modulu. Pokud NPI nedefinuje žádné funkce zpětného volání klientského modulu, není tato struktura nutná.

  • Struktura tabulky odesílání poskytovatele, která obsahuje ukazatele na funkce každého modulu poskytovatele.

Klientský modul, který podporuje konkrétní NPI, používá položky definované npI k implementaci klientské strany rozhraní. Podobně modul zprostředkovatele, který podporuje konkrétní NPI, používá položky definované npI k implementaci strany zprostředkovatele rozhraní.

Všechny položky definované npI jsou neprůzné pro NMR s výjimkou identifikátoru NPI. NMR používá identifikátor NPI k určení, které klientské moduly mají být připojeny k modulům zprostředkovatele.