Articles

Hvad er en Socket?

annoncer

Sockets tillader kommunikation mellem to forskellige processer på samme eller forskellige maskiner. For at være mere præcis er det en måde at tale med andre computere ved hjælp af Standardfilbeskrivere. Hver I / O-handling udføres ved at skrive eller læse en filbeskrivelse. En filbeskrivelse er kun et heltal, der er knyttet til en åben fil, og det kan være en netværksforbindelse, en tekstfil, en terminal eller noget andet.

til en programmør ser en stikkontakt ud og opfører sig meget som en filbeskrivelse på lavt niveau. Dette skyldes, at kommandoer som læse () og skrive () arbejder med stikkontakter på samme måde som de gør med filer og rør.

stikkontakter blev først introduceret i 2.1 BSD og derefter raffineret til deres nuværende form med 4.2 BSD. Sockets-funktionen er nu tilgængelig med de fleste aktuelle SYSTEMUDGIVELSER.

Hvor Bruges Socket?

et enkelt stik bruges i en klient-server applikationsramme. En server er en proces, der udfører nogle funktioner på anmodning fra en klient. De fleste af protokollerne på applikationsniveau som FTP, SMTP og POP3 bruger stikkontakter til at etablere forbindelse mellem klient og server og derefter til udveksling af data.

Socket typer

der er fire typer af stikkontakter til rådighed for brugerne. De to første bruges mest, og de sidste to bruges sjældent.

processer formodes kun at kommunikere mellem stikkontakter af samme type, men der er ingen begrænsning, der forhindrer kommunikation mellem stikkontakter af forskellige typer.

  • Stream Sockets − levering i et netværksmiljø er garanteret. Hvis du sender gennem strømstikket tre elementer” A, B, C”, ankommer de i samme rækkefølge − “A, B, C”. Disse stikkontakter bruger TCP (Transmission Control Protocol) til datatransmission. Hvis levering er umulig, modtager afsenderen en fejlindikator. Dataposter har ingen grænser.

  • Datagram Sockets − levering i et netværksmiljø er ikke garanteret. De er forbindelsesløse, fordi du ikke behøver at have en åben forbindelse som I Stream Sockets − du bygger en pakke med destinationsoplysningerne og sender den ud. De bruger UDP (User Datagram Protocol).

  • rå Sockets − disse giver brugerne adgang til de underliggende kommunikationsprotokoller, som understøtter socket abstraktioner. Disse stikkontakter er normalt datagram-orienterede, selvom deres nøjagtige egenskaber er afhængige af grænsefladen, der leveres af protokollen. Rå stikkontakter er ikke beregnet til den generelle bruger; de er hovedsageligt leveret til dem, der er interesseret i at udvikle nye kommunikationsprotokoller, eller for at få adgang til nogle af de mere kryptiske faciliteter i en eksisterende protokol.

  • sekventerede Pakkestik − de ligner en strømstik, med undtagelse af at rekordgrænser bevares. Denne grænseflade leveres kun som en del af netværkssystemer (NS) socket abstraktion, og er meget vigtigt i de fleste alvorlige NS applikationer. Sekventerede pakkestik giver brugeren mulighed for at manipulere Sekvenspakkeprotokol (SPP) eller internet Datagram Protocol (IDP) overskrifter på en pakke eller en gruppe pakker, enten ved at skrive en prototype header sammen med de data, der skal sendes, eller ved at specificere en standard header, der skal bruges med alle udgående data, og giver brugeren mulighed for at modtage overskrifterne på indgående pakker.

Hvad er det næste?

de næste par kapitler er beregnet til at styrke dit grundlæggende og forberede et fundament, før du kan skrive Server-og klientprogrammer ved hjælp af socket. Hvis du direkte vil hoppe for at se, hvordan du skriver et klient-og serverprogram, kan du gøre det, men det anbefales ikke. Det anbefales kraftigt, at du går trin for trin og gennemfører disse første par kapitler for at oprette din base, inden du går videre til programmering.

annoncer