Yon Rezime sou pwogramasyon socket pou rezo konpitè

Yon priz se youn nan teknoloji ki pi fondamantal nan pwogram rezo òdinatè. Sockets pèmèt aplikasyon lojisyèl rezo pou kominike lè l sèvi avèk mekanis estanda konstwi nan sistèm kenkayri ak sistèm opere.

Malgre ke li ta ka son tankou jis yon lòt karakteristik nan devlopman lojisyèl entènèt, teknoloji priz te egziste lontan anvan entènèt la. Epi, anpil nan aplikasyon ki pi popilè lojisyèl jodi a konte sou sipò.

Ki sa ki Sockets ka fè pou rezo ou

Yon priz reprezante yon koneksyon sèl ant egzakteman de moso nan lojisyèl (yon sa yo rele pwen-a-pwen koneksyon). Plis pase de moso nan lojisyèl ka kominike avèk kliyan / sèvè oswa distribye sistèm lè l sèvi avèk sipò miltip. Pou egzanp, navigatè entènèt anpil ka ansanm kominike avèk yon sèvè entènèt sèl atravè yon gwoup sipò te fè sou sèvè a.

Socket ki baze sou lojisyèl anjeneral kouri sou de òdinatè separe nan rezo a, men sipò kapab tou itilize yo kominike lokalman ( entèprès ) sou yon òdinatè sèl. Sockets yo bidirectional , sa vle di ke chak bò nan koneksyon an se kapab tou de voye ak resevwa done. Pafwa se aplikasyon an yon sèl ki inisye kominikasyon aple "kliyan an" ak aplikasyon an lòt "sèvè a", men tèminoloji sa a mennen nan konfizyon nan kanmarad kanmarad rezo epi yo ta dwe jeneralman dwe evite.

SQL APIs ak bibliyotèk

Plizyè bibliyotèk ki aplike estanda aplikasyon entèfas pwogram (APIs) egziste sou entènèt la. Pake prensipal la endikap - bibliyotèk la Socket Berkeley se toujou lajman nan itilize sou sistèm UNIX. Yon lòt API trè komen se Windows Sockets (WinSock) bibliyotèk la pou sistèm operasyon Microsoft. Relatif nan teknoloji lòt òdinatè, APIs priz yo byen matirite: WinSock te nan itilize depi 1993 ak Berkeley sipò depi 1982.

APIs priz yo se relativman ti ak senp. Anpil nan fonksyon yo sanble ak sa yo itilize nan Done opinyon / rannman dosye tankou li () , ekri () , ak fèmen () . Fonksyon aktyèl la apèl yo sèvi ak depann sou langaj la pwogramasyon ak bibliyotèk priz chwazi.

Sous Interface Socket

Sous interfaces ka divize an twa kategori:

  • Kouran sipò, kalite ki pi komen, mande pou de pati yo kominike premye etabli yon koneksyon priz, apre yo fin ki nenpòt ki done pase nan ki koneksyon yo pral garanti yo rive nan menm lòd la nan ki li te voye - sa yo rele pwogram koneksyon oryante modèl.
  • Sipò Datagram ofri semantik "koneksyon-mwens". Avèk dyagram, koneksyon yo enplisit olye ke eksplisit tankou ak sous dlo. Nenpòt pati tou senpleman voye datogram kòm nesesè epi tann pou lòt la reponn; mesaj yo ka pèdi nan transmisyon oswa resevwa soti nan lòd, men li se responsablite aplikasyon an epi yo pa sipò yo fè fas ak pwoblèm sa yo. Aplike sipò datagram ka bay kèk aplikasyon pou yon ogmantasyon pèfòmans ak fleksibilite adisyonèl konpare ak lè l sèvi avèk sipò kouran, jistifye itilizasyon yo nan kèk sitiyasyon.
  • Kalite twazyèm nan priz - priz la anvan tout koreksyon - kontourneman sipò bati-an bibliyotèk la pou pwotokòl estanda tankou tchp ak UDP . Ròch sipò yo itilize pou devlopman pwotokòl ki ba-nivo.

Sipò Socket nan Pwotokòl Rezo

Socket rezo modèn yo tipikman yo itilize nan konjonksyon avèk pwotokòl yo Entènèt - IP, tchp, ak UDP. Bibliyotèk ki enkli sipò pou entènèt pwotokòl itilize TCP pou kouran, UDP pou datagram, ak IP tèt li pou sipò anvan tout koreksyon.

Pou kominike sou entènèt la, IP priz bibliyotèk sèvi ak adrès IP la yo idantifye òdinatè espesifik. Anpil pati nan travay sou entènèt la ak sèvis nonmen, pou itilizatè yo ak pwogramasyon priz ka travay avèk òdinatè pa non ( egzanp , "thiscomputer.wireless.about.com") olye pou yo pa adrès ( egzanp , 208.185.127.40). Kouran ak sipò dyagram yo itilize tou nimewo pò IP yo distenge aplikasyon miltip soti nan chak lòt. Pou egzanp, navigatè entènèt sou entènèt la konnen yo sèvi ak pò 80 kòm default la pou priz kominikasyon ak serveurs entènèt.