![]() |
||
![]() |
![]() ![]() ![]() |
![]() |
![]() |
Knihovny síťových protokolů pro ETHERNETV rámci programového vybavení pro desku IOETH01 vzniklo několik nových knihoven, umožňujících připojení řídicích jednotek KIT do běžné lokální sítě (na bázi TCP/IP nebo Novell Netware) a komunikaci pomocí standardních síťových protokolů. Tyto knihovny je možné rozdělit do několika kategorií:
Nově vzniklé komunikační knihovny již nevycházejí ze základní třídy TChnVirt (viz. knihovna ChnVirt), ale z nové třídy TCoDevice (viz. knihovna CoBase). Rozhraní knihoven bylo zcela přepracováno, tak aby umožňovalo plně využít možností síťových protokolů. Mezi nové vlastnosti knihoven patří demultiplex na jednotlivých vrstvách síťové architektury, překrývající se (overlapped) operace, automatické zjištování timeoutů, synchronizace a možnost přistupovat ke komunikačnímu kanálu z více procesů. CoBaseknihovna CoBase definuje sadu tříd pro snadnou implementaci síťových protokolů. Na bází této knihovny jsou vytvořeny všechny další ovladače zařízení a knihovny síťových protokolů. Knihovna definuje jednotné aplikační rozhraní a jednotné chování na všech vrstvách protokolového stacku. CoEthDefKnihovna CoEthDef obsahuje společné definice a deklarace všech knihoven implementujících fyzickou a spojovou vrstvu Ethernetu, tj. knihovny CoETH01 a CoPktDrv. CoETH01Knihovna CoETH01 implementuje ovladač karty IOETH01, resp. jiné karty s řadičem LAN91C96. Zajišťuje inicializaci karty, vysílání a příjem rámců na spojové (linkové) vrstvě. CoPktDrvKnihovna CoPktDrv implementuje obecný ovladač síťové karty. Tento ovladač nepřistupuje k hardware karty přímo, ale přes tzv. Packet Driver, což je rezidentní program běžící v o.s. DOS, který poskytuje jednotné rozhraní pro různé typy standardních síťových karet.Knihovna CoPktDrv vznikla především pro ladící účely. Vzhledem k tomu, že vývoj Packet Driveru, byl již před mnoha lety ukončen a nepodporuje nové typy síťových karet, použití této knihovny je tedy omezené. CoIPXKnihovna CoIPX implementuje síťový protokol IPX. Protokol IPX je používán v sítích Novell, které se v dnešní době vyskytují jen zřídka. IPX je podobně jako protokol UDP nepotvrzovaný a pracuje přímo s fyzickými adresami síťových karet. CoIPv4Knihovna CoIPv4 implementuje síťovou vrstvy TCP/IP architektury a to protokol IP (Internet Protocol) verze 4 a dva servisní protokoly ICMP (Internet Control Message Protocol) a ARP (Address Resolution Protocol). Pomocí této knihovny, je možné propojit stanice nejen v rámci lokální sítě, ale i v rámci celého Internetu. Aplikace prakticky nikdy nepřistupuje k síťové vrstvě přímo, ale vždy skrze protokoly transportní vrstvy UDP nebo TCP. CoUDPKnihovna CoUDP implementuje jednoduchý transportní protokol UDP (User Datagram Protocol). Tento protokol není potvrzovaný a nezaručuje tedy bezpečný přenos zpráv mezi odesilatelem a příjemcem. O potvrzování, pokud je potřeba, se musí postarat aplikační vrstva. CoTCPKnihovna CoTCP implementuje transportní protokol TCP (Transmission Control Protocol). Tento relativně složitý protokol, zajišťuje navazování a ukončování spojení, přenos dat s potvrzováním a zabraňuje zahlcení na straně příjemce. CoINETKnihovna CoINET deklaruje funkce usnadňující programování aplikací, které využívají protokolů UDP nebo TCP. Obsahuje funkce pro jednoduché vytvoření/zrušení TCP/IP stacku. a otevření/uzavření UDP příp. TCP socketu (zásuvky). ChnUDPKnihovna ChnUDP definuje třídu TChnUDP, která je napojena na transportní vrstvu (UDP protokol) TCP/IP stacku a poskytuje funkce rozhraní stávajících komunikačních knihoven vycházejících ze třídy TChnVirt. Jedná se tedy o jakousi konverzní knihovnu pro ty, co se nechtějí nic nového učit. Její použití se nedoporučuje, protože rozhraní stávajících komunikačních knihoven neumožňuje využít všech možností vzniklých síťových protokolů. |
![]() |
![]() |