Chirongwa cheSocket Programming for Computer Networking

Icheki chimwe chezvinhu zvakakosha zvekombiyuta network programming. Zvigaro zvinobvumira network software maitiro ekukurukurirana achishandisa nzira dzakawanda dzakagadzirirwa mumatareji hardware nemashandisirwo ekushanda.

Kunyangwe zvingaita sezvinongova chimwe chiitiko cheInternet software kukurudzirwa, teknolojia yakagadzirwa yakave yakareba nguva yakawanda isati yasvika kuWebhu. Uye, vazhinji vemazuva ano vanozivikanwa zvikuru network software vanoshandiswa pazvigaro.

Zvimwe Zvikwangwani Zvinogona Kuita Newe Network yako

Ichekeri inomiririra kubatana kumwe chete pakati pezvikamu zviviri zve software (ainzi inonzi point-to-point connection). Zvinopfuura zvidimbu zviviri zvepurogiramu zvinogona kutaurirana nevatengi / sevha kana kugovera mashandisi nekushandisa zvigaro zvakawanda. Semuenzaniso, maWebhu eWebsite akawanda anogona kutaura panguva imwechete nevhareji yeWebhu kuburikidza neboka rezvigaro zvakaitwa pavhavha.

Socket-based software inowanzoenderera pamakombiyuta maviri akapararira pamutambo, asi zvigaro zvinogona kushandiswawo kutaurirana munharaunda ( interprocess ) pane imwe kombiyuta. Zvigaro zvinonzi bidirectional , zvinoreva kuti rumwe rutivi rwekubatana runokwanisa zvose kutumira nekugamuchira deta. Dzimwe nguva shanduro imwe inotanga kutaurirana inonzi "mutengi" uye imwe shanduro iyo "server," asi izwi iri rinotungamirira mukuvhiringidzika pakusangana nevezera rekutarisana uye inowanzofanira kudziviswa.

Socket APIs uye Libraries

Makiraibhurari akawanda anoita shanduro yekushandiswa kwepurogiramu inowanikwa (APIs) iripo paInternet. Iko yekutanga yepakiti - Berkeley Socket Library ichiri kushandiswa zvakanyanya paNIX systems. Rimwe rakanyanya kufanana API ndiyo mabhuku eWindows Sockets (WinSock) yeMicrosoft operating systems. Zvichienderana nezvimwe zvekombiyuta, zvigaro zve APIs zvakakura zvakanyanya: WinSock yakashandiswa kubvira muna 1993 uye Berkeley zvigaro kubvira muna 1982.

Izvo zvakakosha APIs zvishoma uye zvishoma. Zvizhinji zvemabasa zvakafanana neaya anoshandiswa mufaira yekupinza / kubuda maitiro se kuverenga () , kuandika () , uye pedyo () . Iko chaiyo inoshevedza kushandiswa inoshandiswa inobva pane chirongwa chekushandura uye raibhurari yakasarudzwa yakasarudzwa.

Socket Interface Types

Socket interfaces inogona kugoverwa muzvikamu zvitatu:

  • Mitsuko yakashambadza, iyo yakakurumbira, inoda kuti mapato maviri ekukurukurirana atanga kutanga kugadzira sangano, mushure mokunge imwe nhamba inodarika neyokubatanidza iyo ichavimbiswa kuti iuye mune imwechete iyo yakatumirwa-iyo inonzi purogiramu yakatarisana muenzaniso.
  • Datagram sockets inopa "kushamwaridzana-pasi" semantics. Ne datagrams, kushamwaridzana kunobatanidzwa panzvimbo pekujekesa sehova. Chero sangano rinongotumira datagrams sezvinodiwa uye rinomirira kuti rimwe riite; mharidzo inogona kurasikirwa nekutumirwa kana kugamuchirwa kunze kwekugadzirisa, asi iyo inomirira basa uye kwete zvigaro zvekutarisana nezvinetso izvi. Kushandisa nheyo dzemawere zvigaro zvinogona kupa mamwe maitiro ekusimudzirwa kwekuita uye kuwedzerwa kushandiswa kunoenzanisa nekushandisa zvigaro zvemashoko, kururamisa kushandiswa kwavo mune mamwe mamiriro ezvinhu.
  • Rudzi rwechitatu rwechekeri - tambo yakasvibirira - inopfurikidza nekamurasi yakagadzirirwa mukati mechirongwa chemaitiro akadai seTCP uye UDP . Zvigaro zvakakura zvinoshandiswa pamutambo wepasi-protocol development development.

Socket Support in Network Protocols

Mazuva ano mashizha emagetsi anowanzoshandiswa pamwe chete nemitambo yeIndaneti - IP, TCP, uye UDP. Makirasiyuta anoshandisa zvigaro zveInternet Protocol kushandisa TCP yemisasa, UDP ye datamrams, uye IP pachayo yezvigadziko zvakasvibirira.

Kukurukura pamusoro peInternet, makamuri makamuri eI IP anoshandisa IP kero kuti aone mahwanda emakombiyuta. Zvikamu zvakawanda zveInternet zvinoshanda nemazita ekutumidza mazita, kuitira kuti vashandisi uye vateereri vese vakwanise kushanda nemakombiyuta nemazita ( semuenzaniso , "iyi yepakombiyuta.wireless.about.com") panzvimbo yekero ( semuenzaniso , 208.185.127.40). Mitsva uye datagram mabheji anoshandisa IP nhamba dzenhamba kuti aone kusiyana kwezvikwata kubva kune mumwe. Semuenzaniso, maWebburanditi eWebhudhiro paIndaneti anoziva kushandisa shanje 80 sechinhu chisina kushandiswa kwekutengesa zvishandiso nemaseji eWebhu.