Sdílet prostřednictvím


Rozhraní Windows Sockets: pozadí

Tento článek vysvětluje povahu a účel rozhraní Windows Sockets.V článku také:

  • Definuje pojem "soketů".

  • Popisuje typ dat popisovače SOKETU.

  • Popisuje použití soketů.

Specifikace rozhraní Windows Sockets definuje sítě binárně kompatibilní programovací rozhraní pro Microsoft Windows.Rozhraní Windows Sockets jsou založeny na systému UNIX implementace soketů v Berkeley Software Distribution (BSD, uvolněte 4.3) z University of California v Berkeley.Specifikace obsahuje styl BSD socket rutin a rozšíření, které jsou specifické pro systém Windows.Pomocí rozhraní Windows Sockets umožňuje aplikaci komunikovat přes síť, která odpovídá rozhraní API Windows Sockets.V systému Win32 rozhraní Windows Sockets stanovit vláken.

Mnoho dodavatelů softwaru sítě podporovat rozhraní Windows Sockets v části síťové protokoly, včetně přenosu Control Protocol/Internet Protocol (TCP/IP), Xerox Network System (XNS), protokol DECNet společnost Digital Equipment Corporation's, společnost Novell Internet Packet Exchange/Sequenced balené Exchange (IPX/SPX) a dalších.Přestože současná specifikace rozhraní Windows Sockets definuje abstrakce sockets pro protokol TCP/IP, libovolný síťový protokol může vyhovět rozhraní Windows Sockets zadáním vlastní verzi dynamickou knihovnu (DLL), která implementuje rozhraní Windows Sockets.Příkladem obchodním aplikacím napsaným pomocí rozhraní Windows Sockets X Windows servery emulátorů terminálů a systémy elektronické pošty.

[!POZNÁMKA]

Účelem rozhraní Windows Sockets je pryč abstraktní základní sítě tak, že nemusíte být profesionálem v této síti, a tak lze aplikaci spustit v síti, který podporuje soketů.Tato dokumentace v důsledku toho není popsán podrobností síťových protokolů.

Microsoft Foundation Class Library (MFC) podporuje programování pomocí rozhraní API Windows Sockets a poskytuje dvě třídy.Jeden z těchto tříd, CSocket, poskytuje vysokou úroveň abstrakce pro zjednodušení programování komunikace vaší sítě.

Specifikace rozhraní Windows Sockets, rozhraní Windows Sockets: Otevřete rozhraní pro Network Computing v části Microsoft Windows, nyní ve verzi 1.1, byl vyvinut jako otevřený standard sítě ve velké skupině osob a podniků ve Společenství protokolu TCP/IP a je volně k dispozici pro použití.Sokety aktuálně programovací model podporuje jeden "komunikace domény", pomocí sada protokolů sítě Internet.Je k dispozici ve specifikaci Windows SDK.

Tip

Protože sockets slouží sada protokolů sítě Internet, jsou upřednostňované trase pro aplikace, které podporují komunikace v síti Internet na "informační dálnice."

Definice soket

Soket je koncový bod komunikace – objekt, jehož prostřednictvím aplikace Windows Sockets odesílá nebo přijímá pakety dat v síti.Soket je typu a je spojena s spuštěný proces a může mít název.V současné době sockets obecně vyměňovat data pouze s jinými sockets ve stejné "komunikace doméně," který používá sada protokolů sítě Internet.

Oba druhy soketů jsou obousměrné; jsou datové toky, které mohou být sdělena současně v obou směrech (plně duplexní).

K dispozici jsou dva typy soketů:

  • Stream soketů

    Stream soketů stanovit tok dat bez záznamů hranice: datový proud bajtů.Datové proudy je zaručeno doručení a správně seřazeny a unduplicated.

  • Datagram soketů

    Datagram soketů podpora záznamu orientované tok dat, není zaručeno doručení a nemusí být seřazeny jako odeslané nebo unduplicated.

"Seřazeny" znamená, že pakety budou doručeny v pořadí odeslání. "Unduplicated"se rozumí získání určitého paketu pouze jednou.

[!POZNÁMKA]

V rámci některé síťové protokoly, jako je například XNS datových proudů lze záznam orientované jako proudy záznamy, nikoli proudy bajtů.V rámci běžných protokolu TCP/IP jsou však datové proudy proudy bajt.Rozhraní Windows Sockets poskytuje úroveň abstrakce, které jsou nezávislé na protokol.

Informace o těchto typech a jaký typ soketu pro použití v situacích, které naleznete v rozhraní Windows Sockets: soketů proudu a rozhraní Windows Sockets: Datagram soketů.

Datový typ SOKETU

Každý objekt soketu MFC zapouzdřuje popisovač k objektu rozhraní Windows Sockets.Datový typ tento popisovač je SOKETU.A SOKETU popisovač je obdobou HWND okna.Třídy knihovny MFC soketu poskytují operace na zapouzdřený úchyt.

SOKETU datový typ je podrobně popsáno v Windows SDK.Rozhraní Windows Sockets naleznete v "Datový typ soketu a chybové hodnoty".

Použití soketů

Sokety jsou velmi užitečné v kontextu komunikací nejméně tři:

  • Modely typu klient server.

  • Peer-to-peer scénářů, jako je například aplikace pro zasílání zpráv.

  • Vytváření vzdálených volání procedur (RPC) tak, že přijímající aplikace interpretují zprávy jako volání funkce.

Tip

Ideálním případem použití knihovny MFC sockets je při psaní obou stranách komunikace: použití knihovny MFC na obou koncích.Další informace o tomto tématu, včetně způsobu řízení v případě, když komunikujete non-MFC aplikace, viz rozhraní Windows Sockets: pořadí bajtů.

Další informace naleznete v tématu Windows Sockets specifikace: ntohs, ntohl, htons, htonl.Navíc naleznete v následujících tématech:

Viz také

Koncepty

Rozhraní Windows Sockets v MFC