Paglipat ng data ng Tcp ip. Ano ang mga network port? Paano tingnan ang mga kasalukuyang koneksyon


TCP/IP protocol na batayan ng trabaho pandaigdigang network Internet. Upang maging mas tumpak, ang TCP/IP ay isang listahan o stack ng mga protocol, at sa katunayan, isang hanay ng mga panuntunan kung saan ang impormasyon ay ipinagpapalit (ang packet switching model ay ipinapatupad).

Sa artikulong ito, susuriin namin ang mga prinsipyo ng pagpapatakbo ng TCP/IP protocol stack at susubukan naming maunawaan ang mga prinsipyo ng kanilang operasyon.

Tandaan: Kadalasan, ang TCP/IP abbreviation ay tumutukoy sa buong network na tumatakbo batay sa dalawang protocol na ito, TCP at IP.

Sa modelo ng naturang network, bilang karagdagan sa mga pangunahing protocol TCP (Transport Layer) at IP (Network Layer Protocol) kasama ang application at network layer protocol (tingnan ang larawan). Ngunit bumalik tayo nang direkta sa TCP at IP protocol.

Ano ang mga protocol ng TCP/IP

TCP - Transfer Control Protocol. Transmission Control Protocol. Naghahain ito upang matiyak at magtatag ng isang maaasahang koneksyon sa pagitan ng dalawang aparato at maaasahang paglilipat ng data. Sa kasong ito, kinokontrol ng TCP protocol pinakamainam na sukat ipinadala data packet, isinasagawa bagong parsela kapag nabigo ang transmission.

IP - Internet Protocol. Ang Internet Protocol o Address Protocol ay ang batayan ng buong arkitektura ng paghahatid ng data. Ang IP protocol ay ginagamit upang maghatid pakete ng network data sa sa tamang address. Sa kasong ito, ang impormasyon ay nahahati sa mga packet, na nakapag-iisa na lumipat sa network sa nais na patutunguhan.

Mga format ng protocol ng TCP/IP

Format ng IP protocol

Mayroong dalawang mga format para sa IP protocol IP address.

IPv4 na format. Ito ay 32 bit binary na numero . Ang isang maginhawang paraan ng pagtatala ng isang IP address (IPv4) ay nasa form apat na grupo decimal na mga numero

(mula 0 hanggang 255), pinaghihiwalay ng mga tuldok. Halimbawa: 193.178.0.1.

IPv6 na format.

Ito ay isang 128-bit na binary number. Bilang isang tuntunin, ang mga IPv6 address ay nakasulat sa anyo ng walong grupo. Ang bawat pangkat ay naglalaman ng apat na hexadecimal digit na pinaghihiwalay ng colon. Halimbawa ng IPv6 address 2001:0db8:85a3:08d3:1319:8a2e:0370:7889.

Paano gumagana ang mga protocol ng TCP/IP

Kung ito ay maginhawa, isipin ang pagpapadala ng mga data packet sa network bilang pagpapadala ng sulat sa pamamagitan ng koreo.

Ang bawat computer sa network ay may sariling natatanging address. Sa pandaigdigang Internet, ang isang computer ay may ganitong address, na tinatawag na isang IP address (Internet Protocol Address).

Sa pamamagitan ng pagkakatulad sa koreo, IP address ito ang numero ng bahay. Ngunit hindi sapat ang numero ng bahay para makatanggap ng liham.

Ang impormasyong ipinadala sa network ay hindi ipinadala ng computer mismo, ngunit sa pamamagitan ng mga application na naka-install dito. Ang mga naturang application ay mail server, web server, FTP, atbp. Upang makilala ang pakete ipinadalang impormasyon, ang bawat application ay naka-attach sa isang partikular na port. Halimbawa: nakikinig ang web server sa port 80, nakikinig ang FTP sa port 21, mail SMTP server nakikinig sa port 25, nagbabasa ng mail ang POP3 server mga mailbox sa port 110.

Kaya, sa address packet sa TCP/IP protocol, isa pang linya ang lilitaw sa mga addressee: port. Analogue na may mail - ang port ay ang numero ng apartment ng nagpadala at ang tatanggap.

Halimbawa:

Pinagmulan ng address:

IP: 82.146.47.66

Address ng patutunguhan:

IP: 195.34.31.236

Ito ay nagkakahalaga ng pag-alala: Ang IP address + port number ay tinatawag na "socket". Sa halimbawa sa itaas: mula sa socket 82.146.47.66:2049 ang isang packet ay ipinadala sa socket 195.34.31.236:53.

TCP protocol

Ang TCP protocol ay ang susunod na layer protocol pagkatapos ng IP protocol. Ang protocol na ito ay inilaan upang kontrolin ang paglilipat ng impormasyon at ang integridad nito.

Halimbawa, ang ipinadalang impormasyon ay nahahati sa magkakahiwalay na mga packet. Ang mga pakete ay ihahatid nang nakapag-iisa sa tatanggap. Sa panahon ng proseso ng paghahatid, ang isa sa mga packet ay hindi naipadala. Ang TCP protocol ay nagbibigay ng mga retransmission hanggang sa matanggap ng tatanggap ang packet.

Itinatago ng TCP transport protocol ang lahat ng problema at detalye ng paglilipat ng data mula sa mga mas mataas na antas ng protocol (pisikal, channel, network IP).

Lektura 3. TCP/IP stack. Mga pangunahing protocol TCP/IP

Ang TCP/IP protocol ay ang pangunahing transport network protocol. Ang terminong "TCP/IP" ay karaniwang tumutukoy sa lahat ng nauugnay sa TCP at IP protocol. Sinasaklaw nito ang isang buong pamilya ng mga protocol, application program, at maging ang network mismo. Kasama sa pamilya Mga protocol ng UDP, ARP, ICMP, TELNET, FTP at marami pang iba.

Ang arkitektura ng protocol ng TCP/IP ay idinisenyo para sa pinagsama-samang network na binubuo ng hiwalay na magkakaibang mga subnet ng packet na konektado sa isa't isa sa pamamagitan ng mga gateway, kung saan nakakonekta ang mga heterogenous na makina. Ang bawat subnet ay gumagana ayon sa sarili nito tiyak na pangangailangan at may sariling katangian bilang paraan ng komunikasyon. Gayunpaman, ipinapalagay na ang bawat subnet ay maaaring makatanggap ng isang pakete ng impormasyon (data na may kaukulang header ng network) at ihatid ito sa tinukoy na address sa partikular na subnet na iyon. Ang subnet ay hindi kinakailangan upang garantiyahan ang mandatoryong paghahatid ng packet at magkaroon ng maaasahang end-to-end na protocol. Sa ganitong paraan, maaaring magpalitan ng mga packet ang dalawang makina na konektado sa parehong subnet.

Ang TCP/IP protocol stack ay may apat na layer (Larawan 3.1).

Larawan 3.1 – TCP/IP stack

Ang Layer IV ay tumutugma sa network access layer, na gumagana batay sa karaniwang mga protocol pisikal at layer ng link, tulad ng Ethernet, Token Ring, SLIP, PPP at iba pa. Ang mga protocol sa antas na ito ay responsable para sa paghahatid ng packet data ng network sa antas ng hardware.

Nagbibigay ang Layer III ng internetworking kapag nagpapadala ng mga data packet mula sa isang subnet patungo sa isa pa. Sa kasong ito, gumagana ang IP protocol.

Ang Antas II ay ang pangunahing isa at nagpapatakbo batay sa control protocol Pagpapadala ng TCP. Ang protocol na ito ay kinakailangan para sa maaasahang pagpapadala ng mga mensahe sa pagitan ng naka-host iba't ibang mga kotse mga programa sa aplikasyon dahil sa pagbuo ng mga virtual na koneksyon sa pagitan nila.

Antas I – inilapat. Ang TCP/IP stack ay nasa loob ng mahabang panahon at kasama dito malaking bilang mga protocol at serbisyo antas ng aplikasyon(protocol ng paghahatid FTP file, Telnet protocol, Gopher protocol para sa pag-access ng mga mapagkukunan ng GopherSpace world space, ang pinakatanyag na HTTP protocol para sa pag-access ng mga remote hypertext database sa World Wide Web, atbp.).

Lahat ng stack protocol ay maaaring nahahati sa dalawang grupo: data transfer protocols, na naglilipat ng kapaki-pakinabang na data sa pagitan ng dalawang partido; mga protocol ng serbisyo na kinakailangan para sa tamang operasyon mga network.

Ang mga protocol ng serbisyo ay kinakailangang gumamit ng ilang uri ng protocol ng paglilipat ng data. Halimbawa, opisyal ICMP protocol gumagamit ng IP protocol. Ang Internet ay ang kabuuan ng lahat ng konektado mga network ng kompyuter, gamit ang mga protocol ng TCP/IP stack.

Mga function ng layer ng transportasyon. Mga Protocol TCP, UDP.

Ang ikaapat na antas ng modelo ay idinisenyo upang maghatid ng data nang walang mga error, pagkalugi at pagdoble sa pagkakasunud-sunod kung saan sila ipinadala. Hindi mahalaga kung anong data ang ipinadala, mula saan at saan, iyon ay, nagbibigay ito ng mekanismo ng paghahatid mismo. Nagbibigay ang layer ng transportasyon ang mga sumusunod na uri mga serbisyo:

- pagtatatag ng koneksyon sa transportasyon;

- paglipat ng data;

– pagkagambala sa koneksyon sa transportasyon.

Ginawa ang mga function layer ng transportasyon:

– pag-convert ng isang transport address sa isang network address;

– multiplexing ng mga koneksyon sa transportasyon sa mga koneksyon sa network;

– pagtatatag at pagsira ng mga koneksyon sa transportasyon;

– pag-order ng mga bloke ng data sa pamamagitan ng mga indibidwal na koneksyon;

– pagtuklas ng mga pagkakamali at kinakailangang kontrol sa kalidad ng mga serbisyo;

- pagbawi mula sa mga pagkakamali;

– segmentation, asosasyon at concatenation;

– kontrol sa daloy ng data sa mga indibidwal na koneksyon;

- mga tungkulin sa pangangasiwa;

– paghahatid ng mga kagyat na bloke ng data ng transportasyon.

Ang TCP Transmission Control Protocol ay nagbibigay ng maaasahang, koneksyon-oriented na serbisyo sa paghahatid ng packet.

TCP protocol:

- ginagarantiyahan ang paghahatid ng mga datagram ng IP;

– nagsasagawa ng segmentasyon at pagpupulong ng malalaking bloke ng data na ipinadala ng mga programa;

– tinitiyak ang paghahatid ng mga segment ng data sa kinakailangang pagkakasunud-sunod;

– sinusuri ang integridad ng ipinadalang data gamit checksum;

– nagpapadala ng mga positibong pagkilala kung matagumpay na natanggap ang data. Gamit ang mga piling pagkilala, maaari ka ring magpadala ng mga negatibong pagkilala para sa data na hindi natanggap;

– Nag-aalok ng gustong transportasyon para sa mga program na nangangailangan ng maaasahang paglilipat ng data na nakabatay sa session, tulad ng mga database ng client-server at mga email program.

Ang TCP ay batay sa point-to-point na komunikasyon sa pagitan ng dalawang network node. Ang TCP ay tumatanggap ng data mula sa mga programa at pinoproseso ito bilang isang stream ng mga byte. Ang mga byte ay pinagsama-sama sa mga segment, kung saan ang TCP ay nagtatalaga ng mga sequential na numero na kailangan tamang pagpupulong mga segment sa receiving node.

Para makapag-usap ang dalawang TCP node, kailangan muna nilang magtatag ng session sa isa't isa. Ang isang session ng TCP ay sinisimulan gamit ang isang proseso na tinatawag na three-way handshake, kung saan ang mga sequence number ay naka-synchronize at isang kontrolin ang impormasyon, kinakailangan upang maitatag virtual na koneksyon sa pagitan ng mga node. Kapag nakumpleto na ang proseso ng handshake na ito, magsisimula ang packet forwarding at acknowledgement sa sunud-sunod na pagkakasunud-sunod sa pagitan ng mga node na ito. Ang isang katulad na proseso ay ginagamit ng TCP bago wakasan ang isang koneksyon upang matiyak na ang parehong mga node ay tapos na sa pagpapadala at pagtanggap ng data (Figure 3.2).


Larawan 3.2 – Format ng header Segment ng TCP

Ang source port at destination port na mga field ay sumasakop ng 2 byte at tinutukoy ang proseso ng pagpapadala at ang proseso ng tatanggap. Ang numero ng sequence number at acknowledgement number na mga field (4 bytes ang haba) na numero ay ipinadala o natanggap na byte ng data. Ipinatupad bilang mga unsigned integer na nire-reset kapag naabot nila pinakamataas na halaga. Ang bawat panig ay nangunguna sa kanya-kanya serial numbering. Ang field ng haba ng header ay 4 bits ang haba at kumakatawan sa haba ng TCP segment header, na sinusukat sa 32-bit na salita. Ang haba ng header ay hindi naayos at maaaring mag-iba depende sa mga value na itinakda sa field ng mga parameter. Ang patlang ng reserba ay sumasakop ng 6 na bits. Ang field ng mga flag ay 6 bit ang haba at naglalaman ng anim na 1-bit na mga flag:

– ang URG (Urgent Pointer) flag ay nakatakda sa 1 kung ang pointer sa urgent data field ay ginamit;

bandila ng ACK(Acknowledgment - confirmation) ay nakatakda sa 1 kung ang field ng acknowledgment number ay naglalaman ng data. Kung hindi, ang field na ito ay hindi papansinin;



– ang watawat ng PSH (Push) ay nangangahulugan na ang pagtanggap TCP stack dapat agad na ipaalam sa aplikasyon ang tungkol sa papasok na data, at huwag maghintay hanggang mapuno ang buffer;

– ang bandila ng RST (I-reset) ay ginagamit upang kanselahin ang isang koneksyon: dahil sa isang error sa aplikasyon, pagtanggi sa isang hindi tamang segment, isang pagtatangka na lumikha ng isang koneksyon sa kawalan ng hiniling na serbisyo;

– ang bandila ng SYN (I-synchronize) ay nakatakda kapag nagpasimula ng koneksyon at pag-synchronize serial number;

– ang FIN (Tapos na) bandila ay ginagamit upang wakasan ang koneksyon. Ito ay nagpapahiwatig na ang nagpadala ay tapos na sa pagpapadala ng data.

Ang field ng laki ng window (2 bytes ang haba) ay naglalaman ng bilang ng mga byte na maaaring ipadala pagkatapos ng isang byte na nakilala na. Ang field ng checksum (haba na 2 bytes) ay ginagamit upang madagdagan ang pagiging maaasahan. Naglalaman ito ng checksum ng header, data, at pseudo-header. Kapag nagsasagawa ng mga kalkulasyon, nakatakda ang field ng checksum katumbas ng zero, at ang field ng data ay nilagyan ng null byte kung ang haba nito ay isang kakaibang numero. Idinaragdag lang ng checksum algorithm ang lahat ng 16-bit na salita sa complement ng dalawa at pagkatapos ay kinakalkula ang kabuuan ng complement.

Ang UDP protocol, bilang isang datagram protocol, ay nagpapatupad ng serbisyo hangga't maaari, iyon ay, hindi nito ginagarantiyahan ang paghahatid ng mga mensahe nito, at, samakatuwid, sa anumang paraan ay hindi nagbabayad para sa hindi pagiging maaasahan ng IP datagram protocol. Ang UDP protocol data unit ay tinatawag na UDP packet o user datagram. Ang bawat datagram ay nagdadala ng isang hiwalay na mensahe ng user. Nagreresulta ito sa isang limitasyon: ang haba ng isang UDP datagram ay hindi maaaring lumampas sa haba ng field ng data ng IP protocol, na nalilimitahan naman ng laki ng pinagbabatayan na frame ng teknolohiya. Samakatuwid, kung ang buffer ng UDP ay naging puno, ang data ng application ay itatapon. Ang UDP packet header, na binubuo ng apat na 2-byte na field, ay naglalaman ng fields source port, destination port, UDP length at checksum (Figure 3.3).

Tinutukoy ng source port at destination port ang mga proseso ng pagpapadala at pagtanggap. Ang field ng haba ng UDP ay naglalaman ng haba ng UDP packet sa mga byte. Ang field ng checksum ay naglalaman ng UDP packet checksum, na kinakalkula sa buong UDP packet na may idinagdag na pseudo-header.

Figure 3.3 – UDP packet header format

Pangunahing panitikan: 2

Karagdagang pagbabasa: 7

Mga tanong sa seguridad:

1. Anong protocol sa OSI ang TCP/IP?

2. Ano ang layunin ng arkitektura ng protocol ng TCP/IP?

3. Anong mga layer mayroon ang TCP/IP stack?

4. Anong mga function ang ginagawa ng TCP Transmission Control Protocol?

5. Anong mga pagkakaiba ang umiiral sa pagitan ng mga protocol ng TCP at UDP?

Sa madaling salita, ito ay isang hanay ng mga patakaran na namamahala sa "komunikasyon" ng mga computer sa isa't isa sa network. Mayroong humigit-kumulang isang dosenang mga ito, at bawat isa sa kanila ay tumutukoy sa mga panuntunan sa paglipat hiwalay na uri datos. Ngunit para sa kadalian ng paggamit, lahat sila ay pinagsama sa isang tinatawag na "stack", na tinatawag itong pagkatapos ng pinakamahalagang protocol - ang TCP/IP protocol (Transmission Control Protocol at Internet Protocol). Ang salitang "stack" ay nagpapahiwatig na ang lahat ng mga protocol na ito ay tulad ng isang "stack ng mga protocol" kung saan ang upper-level na protocol ay hindi maaaring gumana nang walang lower-level na protocol.

Ang TCP/IP stack ay may kasamang 4 na layer:

1. Application - HTTP, RTP, FTP, DNS protocol. Ang pinakamataas na antas; responsable sa gawain mga aplikasyon ng aplikasyon, Halimbawa mga serbisyo sa koreo, pagpapakita ng data sa browser, atbp.

2. Transport - TCP, UDP, SCTP, DCCP, RIP na mga protocol. Ang antas na ito Tinitiyak ng mga protocol ang tamang pakikipag-ugnayan ng mga computer sa isa't isa at nagsisilbing conductor ng data sa pagitan ng iba't ibang kalahok sa network.

3. Network - IP protocol. Ang layer na ito ay nagbibigay ng pagkakakilanlan ng mga computer sa network sa pamamagitan ng pagbibigay sa bawat isa sa kanila ng isang natatanging digital address.

4. Channel - Mga protocol ng Ethernet,IEEE 802.11 ,Wireless Ethernet. Karamihan mababang antas; nakikipag-ugnayan ito sa mga pisikal na kagamitan, inilalarawan ang daluyan ng paghahatid ng data at mga katangian nito.

Samakatuwid, ginagamit ng iyong computer ang HTTP - TCP - IP - Ethernet protocol stack upang ipakita ang artikulong ito.

Paano ipinapadala ang impormasyon sa Internet

Ang bawat computer sa network ay tinatawag na isang host at, gamit ang protocol ng parehong pangalan, ay tumatanggap ng isang natatanging IP address. Ang address na ito ay nakatala sa sumusunod na anyo: apat na numero mula 0 hanggang 255 na pinaghihiwalay ng isang tuldok, halimbawa, 195.19.20.203. Upang matagumpay na makipag-usap sa isang network, ang IP address ay dapat ding may kasamang numero ng port. Dahil ang impormasyon ay ipinagpapalit hindi ng mga computer mismo, ngunit ng mga programa, ang bawat uri ng programa ay dapat na mayroon din sariling address, na ipinapakita sa numero ng port. Halimbawa, ang port 21 ay responsable para sa FTP, ang port 80 ay para sa Trabaho ng HTTP. Ang kabuuang bilang ng mga port sa isang computer ay limitado at katumbas ng 65536, na may bilang mula 0 hanggang 65535. Ang mga numero ng port mula 0 hanggang 1023 ay nakalaan mga application ng server, at ang angkop na lugar ng mga port mula 1024 hanggang 65535 ay inookupahan ng mga port ng kliyente, kung saan ang mga programa ay malayang gamitin ayon sa gusto nila. Ang "mga port ng kliyente" ay dynamic na itinalaga.

Kumbinasyon Mga IP address at numero ng port tinawag" saksakan". Sa loob nito, ang mga halaga ng address at port ay pinaghihiwalay ng isang colon, halimbawa, 195.19.20.203:110

Kaya iyon malayong computer nakatanggap ng email mula sa IP 195.19.20.203, kailangan mo lang ihatid ang data sa port 110 nito. At, dahil ang port na ito ay "nakikinig" araw at gabi sa POP3 protocol, na responsable para sa pagtanggap mga email, na nangangahulugang ang susunod na mangyayari ay "isang usapin ng teknolohiya."

Para sa kaginhawahan, ang lahat ng data sa network ay nahahati sa mga packet. Ang package ay isang file na 1-1.5 MB ang laki, na naglalaman ng data ng address ng nagpadala at tatanggap, ipinadalang impormasyon, at data ng serbisyo. Ang paghahati ng mga file sa mga pakete ay maaaring makabuluhang bawasan ang pagkarga sa network, dahil ang landas ng bawat isa mula sa nagpadala hanggang sa tatanggap ay hindi nangangahulugang magkapareho. Kung ang isang traffic jam ay nangyari sa isang lugar sa network, ang mga packet ay maaaring lampasan ito gamit ang iba pang mga landas ng komunikasyon. Ginagawang posible ng teknolohiyang ito na gamitin ang Internet nang mahusay hangga't maaari: kung ang ilang bahagi ng transportasyon ay bumagsak, ang impormasyon ay maaaring patuloy na maipadala, ngunit sa iba pang mga landas. Kapag naabot ng mga packet ang target na computer, magsisimula itong tipunin ang mga ito pabalik sa isang solong file gamit ang impormasyon ng serbisyo na nilalaman nito. Ang buong proseso ay maihahambing sa ilang uri ng malaking palaisipan, na, depende sa laki inilipat na file, ay maaaring umabot ng napakalaking laki.

Gaya ng nabanggit kanina, binibigyan ng IP protocol ang bawat kalahok sa network, kabilang ang mga website, ng isang natatanging numeric address. Gayunpaman, walang taong makakaalala ng milyun-milyong IP address! Samakatuwid, nilikha ang serbisyo ng domain name DNS (Domain). Sistema ng Pangalan), na nakatuon sa pagsasalin ng mga numerong IP address sa mga alphanumeric na pangalan na mas madaling matandaan. Halimbawa, sa halip na i-dial ang kinatatakutang numero 5.9.205.233 sa bawat oras, maaari mong i-dial address bar browser www.site.

Ano ang mangyayari kapag nag-type kami ng address ng site na hinahanap namin sa browser? Mula sa aming computer isang packet na may kahilingan ay ipinadala sa DNS server sa port 53. Ang port na ito ay nakalaan serbisyo ng DNS, na, matapos maproseso ang aming kahilingan, ibinabalik ang IP address na naaayon sa alphanumeric na pangalan ng site. Pagkatapos nito, kumokonekta ang aming computer sa socket 5.9.205.233:80 ng computer 5.9.205.233, na nagho-host ng HTTP protocol na responsable sa pagpapakita ng mga site sa browser, at nagpapadala ng packet na may kahilingang matanggap ang pahina ng www.site. Kailangan nating magtatag ng koneksyon sa port 80, dahil ito ang tumutugma sa Web server. Kung talagang gusto mo, maaari mong tukuyin ang port 80 nang direkta sa address bar ng iyong browser - http://www.site:80. Pinoproseso ng web server ang kahilingang natanggap mula sa amin at naglalabas ng ilang packet na naglalaman HTML na teksto, na ipinapakita ng aming browser. Bilang resulta, nakikita namin ang pangunahing pahina sa screen

Ang pakikipag-ugnayan sa pagitan ng mga computer sa Internet ay isinasagawa sa pamamagitan ng mga protocol ng network, na isang napagkasunduang hanay ng mga partikular na tuntunin ayon sa kung saan iba't ibang mga aparato pagpapalitan ng impormasyon ang mga paghahatid ng data. May mga protocol para sa mga format ng pagkontrol ng error at iba pang uri ng mga protocol. Sa buong mundo internetworking kadalasang ginagamit TCP-IP protocol.

Anong uri ng teknolohiya ito? Ang pangalang TCP-IP ay nagmula sa dalawang network protocol: TCP at IP. Siyempre, ang pagtatayo ng mga network ay hindi limitado sa dalawang protocol na ito, ngunit ang mga ito ay basic hangga't ang organisasyon ng paghahatid ng data ay nababahala. Sa katunayan, ang TCP-IP ay isang hanay ng mga protocol na nagpapahintulot sa mga indibidwal na network na magsama-sama upang mabuo

Ang TCP-IP protocol, na hindi maaaring ilarawan lamang ng mga kahulugan ng IP at TCP, ay kinabibilangan din ng mga protocol na UDP, SMTP, ICMP, FTP, telnet, at higit pa. Ang mga ito at iba pang TCP-IP protocol ay nagbibigay ng pinaka kumpletong operasyon ng Internet.

Sa ibaba ay nagbibigay kami ng isang detalyadong paglalarawan ng bawat protocol na kasama sa pangkalahatang konsepto TCP-IP.

. Internet protocol(IP) ay responsable para sa direktang paghahatid ng impormasyon sa network. Ang impormasyon ay nahahati sa mga bahagi (sa madaling salita, mga packet) at ipinadala sa tatanggap mula sa nagpadala. Para sa tumpak na pagtugon, kailangan mong tukuyin ang eksaktong address o mga coordinate ng tatanggap. Ang mga nasabing address ay binubuo ng apat na byte, na pinaghihiwalay sa bawat isa ng mga tuldok. Ang address ng bawat computer ay natatangi.

Gayunpaman, ang paggamit ng IP protocol lamang ay maaaring hindi sapat para sa tamang paghahatid ng data, dahil ang dami ng karamihan sa ipinadalang impormasyon ay higit sa 1500 mga character, na hindi na magkasya sa isang packet, at ilang mga packet ay maaaring mawala sa panahon ng paghahatid o ipinadala sa. ang maling pagkakasunod-sunod.

. Transmission Control Protocol(TCP) ay ginagamit para sa higit pa mataas na antas kaysa sa nauna. Batay sa kakayahan ng IP protocol na magdala ng impormasyon mula sa isang host patungo sa isa pa, pinapayagan ng TCP protocol ang malaking halaga ng impormasyon na maipadala. Ang TCP ay responsable din sa paghahati ng ipinadalang impormasyon sa magkakahiwalay na bahagi - mga packet - at tamang paggaling data mula sa mga packet na natanggap pagkatapos ng paghahatid. Kasabay nito protocol na ito awtomatikong muling nagpapadala ng mga packet na naglalaman ng mga error.

Pamamahala sa organisasyon ng paglilipat ng data sa malalaking volume maaaring isagawa gamit ang isang bilang ng mga protocol na may espesyal functional na layunin. Sa partikular, mayroong mga sumusunod na uri ng TCP protocol.

1. FTP(File Transfer Protocol) nag-aayos ng paglilipat ng file at ginagamit upang maglipat ng impormasyon sa pagitan ng dalawang Internet node gamit ang mga koneksyon sa TCP sa anyo ng isang binary o simple text file, bilang isang pinangalanang lugar sa memorya ng computer. Sa kasong ito, hindi mahalaga kung saan matatagpuan ang mga node na ito at kung paano sila konektado sa isa't isa.

2. User Datagram Protocol, o User Datagram Protocol, ay independiyenteng koneksyon at nagpapadala ng data sa mga packet na tinatawag na UDP datagrams. Gayunpaman, ang protocol na ito ay hindi kasing maaasahan ng TCP dahil hindi alam ng nagpadala kung ang packet ay talagang natanggap.

3. ICMP(Internet Control Message Protocol) ay umiiral upang magpadala ng mga mensahe ng error na nangyayari sa panahon ng pagpapalitan ng data Mga network sa internet. Gayunpaman, ang ICMP protocol ay nag-uulat lamang ng mga error, ngunit hindi inaalis ang mga dahilan na humantong sa mga error na ito.

4. Telnet- na ginagamit upang ipatupad ang isang text interface sa isang network gamit ang TCP transport.

5. SMTP(Simple Mail Transfer Protocol) ay isang espesyal sa pamamagitan ng email, na tumutukoy sa format ng mga mensahe na ipinadala mula sa isang computer, na tinatawag na SMTP client, sa isa pang computer na nagpapatakbo ng SMTP server. Kasabay nito itong kargamento maaaring maantala ng ilang panahon hanggang sa pareho ang client at server ay ma-activate.

Ang scheme ng paghahatid ng data sa pamamagitan ng TCP-IP protocol

1. Pinaghihiwa-hiwalay ng TCP protocol ang buong dami ng data sa mga packet at binibilang ang mga ito, inilalagay ang mga ito sa mga TCP envelope, na nagbibigay-daan sa iyong ibalik ang pagkakasunud-sunod kung saan natatanggap ang mga bahagi ng impormasyon. Kapag ang data ay inilagay sa naturang sobre, isang checksum ang kinakalkula, na pagkatapos ay isusulat sa TCP header.

3. TCP pagkatapos ay suriin upang makita kung ang lahat ng mga packet ay natanggap. Kung, sa panahon ng pagtanggap, ang bagong kinakalkula ay hindi tumutugma sa ipinahiwatig sa sobre, ito ay nagpapahiwatig na ang ilan sa impormasyon ay nawala o nasira sa panahon ng paghahatid, ang TCP-IP protocol ay muling humihiling ng pagpapasa ng packet na ito. Kinakailangan din ang kumpirmasyon ng pagtanggap ng data mula sa tatanggap.

4. Pagkatapos kumpirmahin ang pagtanggap ng lahat ng mga packet, ang TCP protocol ay nag-uutos sa kanila nang naaayon at muling pinagsama-sama ang mga ito sa isang solong kabuuan.

TCP protocol Ang mga paulit-ulit na pagpapadala ng data at mga panahon ng paghihintay (o mga timeout) ay ginagamit upang matiyak ang maaasahang paghahatid ng impormasyon. Maaaring ipadala ang mga packet sa dalawang direksyon nang sabay-sabay.

Kaya, ang TCP-IP protocol ay nag-aalis ng pangangailangang gamitin mga muling pagpapadala at mga inaasahan para sa mga proseso ng aplikasyon (tulad ng Telnet at FTP).

salansanTCP/ IP.

Ang TCP/IP stack ay isang set ng hierarchically ordered network protocols. Ang stack ay pinangalanan pagkatapos ng dalawang mahalagang protocol - TCP (Transmission Control Protocol) at IP (Internet Protocol). Bilang karagdagan sa kanila, ang stack ay may kasamang ilang dosenang iba't ibang mga protocol. Sa kasalukuyan, ang mga protocol ng TCP/IP ay ang mga pangunahing para sa Internet, gayundin para sa karamihan ng mga corporate at lokal na network.

Sa operating system ng Microsoft Windows Server 2003, ang TCP/IP stack ay pinili bilang pangunahing isa, kahit na ang iba pang mga protocol ay sinusuportahan din (halimbawa, ang IPX/SPX stack, ang NetBIOS protocol).

Ang TCP/IP protocol stack ay may dalawang mahalagang katangian:

    platform independence, ibig sabihin, maaari itong ipatupad sa iba't ibang mga operating system at mga processor;

    pagiging bukas, ibig sabihin, ang mga pamantayan kung saan binuo ang TCP/IP stack ay magagamit ng sinuman.

Kasaysayan ng paglikhaTCP/ IP.

Noong 1967, pinasimulan ng Advanced Research Projects Agency ng US Department of Defense (ARPA - Advanced Research Projects Agency) ang pagbuo ng isang computer network na dapat kumonekta sa isang bilang ng mga unibersidad at research center na nagsagawa ng mga order mula sa Agency. Ang proyekto ay tinawag na ARPANET. Noong 1972, nakakonekta ang network ng 30 node.

Bilang bahagi ng proyekto ng ARPANET, ang mga pangunahing protocol ng TCP/IP stack - IP, TCP at UDP - ay binuo at nai-publish noong 1980–1981. Ang isang mahalagang kadahilanan sa pagkalat ng TCP/IP ay ang pagpapatupad ng stack na ito sa UNIX 4.2 BSD operating system (1983).

Sa pagtatapos ng 1980s, ang lubhang pinalawak na ARPANET ay naging kilala bilang Internet (Interconnected networks). mga konektadong network) at nagkakaisang mga unibersidad at sentro ng pananaliksik sa USA, Canada at Europe.

Noong 1992 ay lumitaw bagong serbisyo Internet – WWW (World Wide Web – world wide web), batay sa HTTP protocol. Higit sa lahat salamat sa WWW, ang Internet, at kasama nito ang mga protocol ng TCP/IP, nakatanggap ng mabilis na pag-unlad noong 90s.

Sa simula ng ika-21 siglo, ang TCP/IP stack ay nakakakuha ng isang nangungunang papel sa paraan ng komunikasyon hindi lamang ng global, kundi pati na rin ng mga lokal na network.

ModeloOSI.

Modelo ng pakikipag-ugnayan bukas na mga sistema(OSI - Open Systems Interconnection) ay binuo ng International Organization for Standardization (ISO - International Organization for Standardization) para sa isang pare-parehong diskarte sa pagbuo at pagkonekta ng mga network. Ang pagbuo ng modelo ng OSI ay nagsimula noong 1977 at natapos noong 1984 sa pag-apruba ng pamantayan. Simula noon, ang modelo ay naging sanggunian para sa pagbuo, paglalarawan at paghahambing ng iba't ibang mga stack ng protocol.

Tingnan natin sandali ang mga pag-andar ng bawat antas.


Kasama sa modelo ng OSI ang pitong layer: pisikal, data link, network, transportasyon, session, presentasyon, at aplikasyon.

    Inilalarawan ng pisikal na layer ang mga prinsipyo paghahatid ng signal, bilis ng paghahatid, mga detalye ng channel ng komunikasyon. Ang antas ay ipinatupad sa hardware ( adaptor ng network, hub port, network cable).

    Nilulutas ng layer ng data link ang dalawang pangunahing gawain: sinusuri nito ang availability ng transmission medium (ang transmission medium ay kadalasang nahahati sa pagitan ng ilang network node), at nakakakita at nagwawasto din ng mga error na nangyayari sa proseso ng transmission.

    Ang pagpapatupad ng antas ay hardware at software (halimbawa, isang network adapter at driver nito). Nagbibigay ang layer ng network pagkakabit ng network , nagtatrabaho sa iba't ibang mga protocol ng channel at pisikal na antas , sa pinagsama-samang network. Bukod dito, ang bawat isa sa mga network na kasama sa iisang network , tinawag subnet (subnet). Sa antas ng network, dalawang pangunahing problema ang kailangang lutasin: pagruruta(pagruruta, pagpili pinakamainam na landas paghahatid ng mensahe) at pagtugon(pag-address, ang bawat node sa isang composite network ay dapat magkaroon ng isang natatanging pangalan). Karaniwan, ang mga function ng layer ng network ay ipinapatupad ng isang espesyal na aparato -

    router

    (router) at ang software nito. Ang layer ng transportasyon ay nalulutas ang problema ng mapagkakatiwalaang pagpapadala ng mga mensahe sa isang pinagsama-samang network sa pamamagitan ng pagkumpirma ng paghahatid at muling pagpapadala ng mga packet. Ang antas na ito at ang lahat ng sumusunod ay ipinatupad sa software. Binibigyang-daan ka ng layer ng session na matandaan ang impormasyon tungkol sa

    kasalukuyang estado

    session ng komunikasyon at, kung nasira ang koneksyon, ipagpatuloy ang session mula sa estadong ito.

Tinitiyak ng layer ng pagtatanghal ang conversion ng ipinadalang impormasyon mula sa isang encoding patungo sa isa pa (halimbawa, mula sa ASCII hanggang EBCDIC).TCP/ IP. Ipinapatupad ng layer ng application ang interface sa pagitan ng iba pang mga layer ng modelo at mga application ng user.

Istruktura Ang istraktura ng TCP/IP ay hindi batay sa modelo ng OSI, ngunit sa sarili nitong modelo, na tinatawag na DARPA (Defense ARPA - ang bagong pangalan ng Advanced Research Projects Agency) o DoD (Department of Defense - US Department of Defense). Ang modelong ito ay may apat na antas lamang. Ang pagsusulatan ng modelo ng OSI sa modelo ng DARPA, pati na rin ang mga pangunahing protocol ng TCP/IP stack, ay ipinapakita sa Fig. 2.2. Dapat pansinin na mababang antas– mahigpit na pagsasalita, hindi gumaganap ng mga function ng channel at pisikal na mga layer, ngunit nagbibigay lamang ng komunikasyon (interface) itaas na antas DARPA na may pinagsama-samang teknolohiya ng network (hal., Ethernet, FDDI, ATM).

Ang lahat ng mga protocol na kasama sa TCP/IP stack ay na-standardize sa mga dokumento ng RFC.

Mga dokumentoRFC.

Ang mga inaprubahang opisyal na pamantayan ng Internet at TCP/IP ay inilathala bilang mga dokumento ng RFC (Request for Comments). Ang mga pamantayan ay binuo ng buong komunidad ng ISOC (Internet Society, isang internasyonal na pampublikong organisasyon). Sinumang miyembro ng ISOC ay maaaring magsumite ng isang dokumento para sa pagsasaalang-alang para sa publikasyon sa isang RFC. Ang dokumento ay susuriin ng mga teknikal na eksperto, development team at RFC editor at dumaan sa mga sumusunod na yugto, na tinatawag na maturity level, alinsunod sa RFC 2026:

    burador(Internet Draft) - sa yugtong ito, ang mga eksperto ay pamilyar sa kanilang sarili sa dokumento, ang mga pagdaragdag at pagbabago ay ginawa;

    iminungkahing pamantayan(Iminungkahing Pamantayan) - ang dokumento ay itinalaga ng isang numero ng RFC, nakumpirma ng mga eksperto ang posibilidad na mabuhay ng mga iminungkahing solusyon, ang dokumento ay itinuturing na promising, ito ay kanais-nais na ito ay masuri sa pagsasanay;

    draft na pamantayan(Draft Standard) - ang isang dokumento ay nagiging draft na pamantayan kung hindi bababa sa dalawang independiyenteng developer ang nagpatupad at matagumpay na nailapat ang mga iminungkahing detalye.

    Sa yugtong ito, pinapayagan pa rin ang mga maliliit na pagwawasto at pagpapahusay; Pamantayan sa Internet

(Internet Standard) - ang pinakamataas na yugto ng pag-apruba ng pamantayan, ang mga detalye ng dokumento ay naging laganap at napatunayan ang kanilang sarili sa pagsasanay. Ang isang listahan ng mga pamantayan sa Internet ay ibinibigay sa RFC 3700. Sa libu-libong RFC, ilang dosena lamang ang mga dokumentong may katayuang "Internet standard".

    Bilang karagdagan sa mga pamantayan, ang mga RFC ay maaari ding mga paglalarawan ng mga bagong konsepto at ideya sa networking, mga patnubay, mga resulta ng mga eksperimentong pag-aaral na ipinakita para sa impormasyon, atbp. Ang mga naturang RFC ay maaaring italaga ng isa sa mga sumusunod na katayuan: eksperimental (Experimental) – isang dokumentong naglalaman ng impormasyon tungkol sa siyentipikong pananaliksik

    at mga pagpapaunlad na maaaring maging interesado sa mga miyembro ng ISOC; impormasyon

    (Informational) - isang dokumentong inilathala upang magbigay ng impormasyon at hindi nangangailangan ng pag-apruba ng komunidad ng ISOC; pinakamahusay na modernong karanasan

Ang katayuan ay ipinahiwatig sa header ng RFC na dokumento pagkatapos ng salita Kategorya (Kategorya). Para sa mga dokumento sa katayuan ng mga pamantayan (Iminungkahing Pamantayan, Draft Standard, Internet Standard), ang pangalan ay ipinahiwatig Mga pamantayan Subaybayan, dahil maaaring mag-iba ang antas ng kahandaan.

Ang mga numero ng RFC ay itinalaga nang sunud-sunod at hindi na muling ibibigay. Ang orihinal na RFC ay hindi na-update. Ang na-update na bersyon ay nai-publish sa ilalim ng isang bagong numero. Ang isang hindi na ginagamit at napapalitan na RFC ay nagiging makasaysayan(Makasaysayan).

Ang lahat ng umiiral na mga dokumento ng RFC ngayon ay maaaring matingnan, halimbawa, sa website www.rfc-editor.org . Mayroong higit sa 5,000 noong Agosto 2007. Ang mga RFC na binanggit sa kursong ito ay nakalista sa Appendix I.

Pangkalahatang-ideya ng mga pangunahing protocol.

Protocol IP (Internet Protocol) – Ito ang pangunahing network layer protocol na responsable para sa pagtugon sa mga composite network at packet transmission sa pagitan ng mga network. Ang IP protocol ay datagram protocol, ibig sabihin, hindi nito ginagarantiyahan ang paghahatid ng mga packet sa destination node. Ang transport layer protocol TCP ay nagbibigay ng mga garantiya.

Mga protocol R.I.P. (Pagruruta Impormasyon Protocol protocol ng impormasyon sa pagruruta ) AtOSPF (Bukas Pinakamaikli Daan Una – « Ang pinakamaikling ruta ay unang nagbubukas" ) – mga routing protocol sa mga IP network.

Protocol ICMP (Internet Kontrolin Mensahe Protocol Control Message Protocol in Composite Networks) ay idinisenyo upang makipagpalitan ng impormasyon ng error sa pagitan ng mga network router at ang source node ng packet. Gamit ang mga espesyal na packet, iniuulat nito ang imposibilidad ng paghahatid ng isang pakete, ang tagal ng pag-assemble ng isang pakete mula sa mga fragment, mga maanomalyang halaga ng parameter, mga pagbabago sa ruta ng pagpapasa at uri ng serbisyo, ang estado ng system, atbp.

Protocol ARP (Address Resolusyon Protocol – Address Translation Protocol) nagko-convert ng mga IP address sa mga address ng hardware ng mga lokal na network. Ang reverse conversion ay isinasagawa gamit ang protocol RAPR (Baliktarin ang ARP).

TCP (Paghawa Kontrolin Protocol – transmission control protocol) tinitiyak ang maaasahang pagpapadala ng mga mensahe sa pagitan ng mga remote network node sa pamamagitan ng pagbuo ng mga lohikal na koneksyon. Binibigyang-daan ka ng TCP na maghatid ng byte stream na nabuo sa isang computer nang walang mga error sa anumang iba pang computer na kasama sa composite network. Hinahati ng TCP ang byte stream sa mga bahagi - mga segment at ipapasa ang mga ito antas ng network. Kapag naihatid na ang mga segment na ito sa kanilang patutunguhan, muling isasama ng TCP ang mga ito sa tuluy-tuloy na stream ng mga byte.

UDP (Gumagamit Datagram Protocol – User Datagram Protocol) ay nagbibigay ng paghahatid ng data sa paraang datagram.

HTTP (HyperText Paglipat Protocol – hypertext transfer protocol) – web document delivery protocol, ang pangunahing protocol ng serbisyo ng WWW.

FTP (file Paglipat Protocol – file transfer protocol) – isang protocol para sa paglilipat ng impormasyong nakaimbak sa mga file.

POP 3 (Post Opisina Protocol bersyon 3 – post office protocol) at SMTP (Simple Mail Paglipat Protocol – Simple Mail Forwarding Protocol) – mga protocol para sa paghahatid ng papasok na email (POP3) at pagpapadala ng papalabas na email (SMTP).

Telnet – terminal emulation protocol 1, na nagpapahintulot sa user na kumonekta sa iba malalayong istasyon at makipagtulungan sa kanila mula sa iyong makina na parang ito ang kanilang malayong terminal.

SNMP (Simple Network Pamamahala Protocol – simpleng network management protocol) ay idinisenyo upang masuri ang pagganap ng iba't ibang network device.