What is a Socket?
Pistorasiat mahdollistavat kahden eri prosessin välisen viestinnän samoilla tai eri koneilla. Tarkemmin sanottuna se on tapa puhua muille tietokoneille käyttäen tavanomaisia Unix – tiedostokuvaajia. Unixissa jokainen I / O-toiminto tehdään kirjoittamalla tai lukemalla tiedostokuvaaja. Tiedostokuvaus on vain avoimeen tiedostoon liittyvä kokonaisluku, joka voi olla verkkoyhteys, tekstitiedosto, pääte tai jotain muuta.
ohjelmoijalle pistorasia näyttää ja käyttäytyy paljon kuin matalan tason tiedostokuvauslaite. Tämä johtuu siitä, että komennot kuten luku() ja kirjoitus() toimivat pistorasioiden kanssa samalla tavalla kuin ne tekevät tiedostojen ja putkien kanssa.
Pistorasiat otettiin käyttöön ensin 2.1 BSD: ssä ja jalostettiin sittemmin nykyiseen muotoonsa 4.2 BSD: llä. Sockets-ominaisuus on nyt saatavilla useimmissa nykyisissä UNIX system-julkaisuissa.
missä pistoketta käytetään?
Unix-liitäntää käytetään asiakas-palvelin-sovelluskehyksessä. Palvelin on prosessi, joka suorittaa joitakin toimintoja asiakkaan pyynnöstä. Useimmat sovellustason protokollat, kuten FTP, SMTP ja POP3, käyttävät pistorasioita luodakseen yhteyden asiakkaan ja palvelimen välillä ja sitten tietojen vaihtamiseen.
Pistorasiatyypit
käyttäjille on tarjolla neljänlaisia pistorasioita. Kahta ensimmäistä käytetään yleisimmin ja kahta viimeistä harvoin.
prosessien oletetaan kommunikoivan vain samantyyppisten pistorasioiden välillä, mutta mitään rajoitusta ei ole, joka estäisi yhteydenpidon erityyppisten pistorasioiden välillä.
-
Stream Sockets − toimitus verkottuneessa ympäristössä on taattu. Jos lähetät stream socket kolme kohdetta ”A, B, C”, ne saapuvat samassa järjestyksessä − ”A, B, C”. Nämä pistorasiat käyttävät TCP (Transmission Control Protocol) tiedonsiirtoon. Jos toimitus on mahdotonta, lähettäjä saa virheilmoituksen. Tietueissa ei ole mitään rajoja.
-
Datagram Sockets − toimitusta verkotetussa ympäristössä ei voida taata. Ne ovat connectionless, koska sinun ei tarvitse olla avoin yhteys kuten Stream Pistorasiat − voit rakentaa paketin kohdetiedot ja lähettää sen ulos. He käyttävät UDP: tä (User Datagram Protocol).
-
Raw − Pistorasiat-nämä tarjoavat käyttäjille pääsyn taustalla oleviin tietoliikenneprotokolliin, jotka tukevat pistorasioiden abstraktioita. Nämä pistorasiat ovat yleensä datagrammi suuntautunut, vaikka niiden tarkat ominaisuudet ovat riippuvaisia rajapinnan tarjoama protokolla. Raw-pistorasioita ei ole tarkoitettu yleiselle käyttäjälle, vaan ne on tarkoitettu lähinnä niille, jotka ovat kiinnostuneita kehittämään uusia viestintäprotokollia tai pääsemään käsiksi joihinkin olemassa olevan protokollan kryptisempiin tiloihin.
-
sekvensoidut Pakettipistokkeet − ne muistuttavat virtapistoketta sillä poikkeuksella, että tietueiden rajat säilyvät. Tämä liitäntä tarjotaan vain osana Network Systems (NS) socket abstraktio, ja on erittäin tärkeä useimmissa vakavia NS sovelluksia. Sequenced-packet sockets avulla käyttäjä voi käsitellä Sequence Packet Protocol (spp) tai Internet Datagram Protocol (IDP) otsikot paketti tai ryhmä paketteja, joko kirjoittamalla prototyyppi otsikko yhdessä mitä tietoja on lähetettävä, tai määrittämällä oletusotsikko, jota käytetään kaikkien lähtevien tietojen, ja antaa käyttäjälle mahdollisuuden vastaanottaa otsikot saapuvien pakettien.
mitä seuraavaksi?
seuraavissa kappaleissa on tarkoitus vahvistaa perusasioita ja valmistella perusta ennen kuin voit kirjoittaa palvelin-ja asiakasohjelmia socket-ohjelmalla. Jos haluat suoraan hypätä nähdä, miten kirjoittaa asiakas-ja palvelinohjelma, voit tehdä niin, mutta se ei ole suositeltavaa. On erittäin suositeltavaa, että menet askel askeleelta ja suorittaa nämä muutaman ensimmäisen luvun tehdä pohja ennen siirtymistä tehdä ohjelmointi.
Leave a Reply