Protokol pemindahan data untuk dummies. ARP: Protokol Resolusi Alamat. Skim penghantaran data melalui protokol TCP-IP

Selamat hari, pembaca yang dikasihi.
Atas permintaan ramai, hari ini saya menerbitkan untuk anda artikel yang akan memperkenalkan anda kepada asas-asas istilah asas rangkaian komputer, iaitu:

  • Protokol rangkaian- apakah nama yang menakutkan ini dan dengan apa ia dimakan?
  • UDP, TCP, ICMP, - apa, mengapa dan apakah perbezaannya
  • IP-alamat, - semua orang mempunyainya, tetapi tidak semua orang tahu mengapa perkara ini :-)
  • Topeng alamat (subnet)
  • Gerbang
  • Beberapa perkataan tentang jadual penghalaan
  • Pelabuhan - apakah itu sebenarnya?
  • MAC-alamat

Macam itu.

Artikel itu, saya fikir, akan berguna kepada semua orang, muda dan tua, kerana ia tidak mengandungi satu set tindakan atau kata-kata yang aneh dan tidak dapat difahami, tetapi satu blok. bahasa yang boleh diakses maklumat yang dibentangkan, yang, sekurang-kurangnya, akan memberi anda pemahaman tentang cara semuanya berfungsi dan mengapa ia diperlukan. Pergi.

Protokol rangkaian TCP/IP, NWLink IPX/SPX, NetBEUI

Mari kita mulakan dengan apa itu protokol rangkaian dan untuk apa ia digunakan.
Protokol rangkaian ialah satu set peraturan yang dilaksanakan perisian untuk komunikasi antara komputer. Sejenis bahasa di mana komputer bercakap antara satu sama lain dan menghantar maklumat. Sebelum ini, komputer, boleh dikatakan, berbilang bahasa dan dalam versi yang lebih lama Windows satu set keseluruhan protokol telah digunakan - TCP/IP, NWLink IPX/SPX, NetBEUI. Kini kami telah mencapai persetujuan umum, dan piawaian telah menjadi penggunaan protokol secara eksklusif TCP/IP, dan oleh itu perbincangan lanjut akan mengenainya.

Apabila mereka bercakap tentang TCP/IP, maka nama ini biasanya bermaksud banyak... peraturan atau, katakan, piawaian yang ditetapkan menggunakan (atau untuk menggunakan) protokol ini. Sebagai contoh, terdapat peraturan di mana mesej ditukar antara pelayan mel dan ada peraturan yang mengikutnya pengguna akhir menerima surat dalam peti masuknya. Terdapat peraturan untuk menjalankan persidangan video dan peraturan untuk mengatur perbualan "telefon" melalui Internet. Sebenarnya, ini bukan peraturan sebenarnya... Lebih seperti tatabahasa, atau sesuatu. Nah, anda tahu, dalam bahasa Inggeris ada satu struktur untuk membina dialog, dalam bahasa Perancis ada satu lagi... Jadi dalam TCP/IP sesuatu yang serupa, iaitu sekumpulan peraturan tatabahasa yang berbeza membentuk protokol yang lengkap TCP/IP atau, lebih tepat lagi, Timbunan protokol TCP/IP.

Protokol rangkaian UDP, TCP, ICMP

Sebagai sebahagian daripada protokol TCP/IP protokol yang digunakan untuk penghantaran data - TCP Dan UDP. Ramai orang mungkin pernah mendengar bahawa terdapat pelabuhan seperti TCP, jadi UDP, tetapi tidak semua orang tahu apa perbezaannya dan apa itu semua. Jadi..

Pemindahan data melalui protokol TCP(Protokol Kawalan Penghantaran) menyediakan pengesahan penerimaan maklumat. "Nah, mereka berkata, adakah anda mendapatnya? - Faham!" Jika pihak yang menghantar tidak menerima pengesahan yang diperlukan dalam jangka masa yang ditetapkan, data akan dihantar semula. Oleh itu protokol TCP dirujuk sebagai protokol berasaskan sambungan, dan UDP(Protokol Datagram Pengguna) - no. UDP digunakan dalam kes di mana tiada pengesahan penerimaan diperlukan (contohnya, pertanyaan DNS atau telefon IP ( wakil terang yang - Skype)). Iaitu, perbezaannya terletak pada kehadiran pengesahan penerimaan. Nampaknya "Itu sahaja!", tetapi dalam praktiknya ia memainkan peranan penting.

Terdapat juga protokol ICMP(Internet Control Message Protocol) yang digunakan untuk menghantar data tentang parameter rangkaian. Ia termasuk jenis pakej utiliti seperti ping, jarak tidak boleh dicapai, TTL dan lain-lain.

Apakah alamat IP

Setiap orang mempunyai satu, tetapi tidak semua orang mempunyai idea tentang jenis alamat ini dan mengapa mustahil untuk hidup tanpanya. Saya beritahu awak.

IP-alamat - 32 -x nombor bit yang digunakan untuk mengenal pasti komputer pada rangkaian. Adalah lazim untuk menulis alamat dalam nilai perpuluhan setiap oktet nombor ini, memisahkan nilai yang terhasil dengan titik. Sebagai contoh, 192.168.101.36

IP alamat adalah unik, yang bermaksud bahawa setiap komputer mempunyai gabungan nombornya sendiri, dan tidak boleh ada dua komputer pada rangkaian dengan alamat yang sama. IP-alamat diedarkan secara berpusat, penyedia Internet membuat permohonan ke pusat nasional mengikut keperluan mereka. Julat alamat yang diterima oleh pembekal diedarkan lagi di kalangan pelanggan. Pelanggan, seterusnya, boleh bertindak sebagai pembekal dan mengedarkan yang diterima IP-alamat antara subklien, dsb. Dengan kaedah pengagihan ini IP-alamat sistem komputer mengetahui dengan tepat "lokasi" komputer, yang mempunyai unik IP-alamat; - sudah cukup baginya untuk menghantar data ke rangkaian "pemilik", dan pembekal, seterusnya, akan menganalisis destinasi dan, mengetahui kepada siapa bahagian alamat ini diberikan, akan menghantar maklumat kepada pemilik seterusnya subband itu IP-alamat sehingga data tiba di komputer destinasi.

Untuk pembinaan rangkaian tempatan, julat alamat khas diperuntukkan. Ini adalah alamatnya 10.x.x.x,192.168.x.x, 10.x.x.x, c 172.16.x.x Oleh 172.31.x.x, 169.254.x.x, di mana di bawah x- bermaksud sebarang nombor daripada 0 sebelum ini 254 . Paket dihantar dari alamat yang ditentukan, tidak dihalakan, dengan kata lain, ia tidak dihantar melalui Internet, dan oleh itu komputer pada rangkaian tempatan yang berbeza mungkin mempunyai alamat yang sama dari julat yang ditentukan. Iaitu, dalam syarikat LLC " Tanduk dan kuku"dan LLC" Vasya dan syarikat"Mungkin ada dua komputer dengan alamat 192.168.0.244 , tetapi mereka tidak boleh, katakan, dengan alamat 85.144.213.122 , diterima daripada pembekal Internet, kerana Tidak boleh ada dua yang serupa di Internet. IP-alamat. Untuk menghantar maklumat daripada komputer tersebut ke Internet dan belakang, program dan peranti khas digunakan yang menggantikan alamat tempatan dengan alamat sebenar apabila bekerja dengan Internet. Dalam erti kata lain, data dihantar ke Rangkaian dari yang sebenar IP-alamat, bukan dari tempatan. Proses ini berlaku tanpa disedari oleh pengguna dan dipanggil terjemahan alamat. Saya juga ingin menyebut bahawa dalam rangkaian yang sama, katakan, sebuah syarikat, LLC " Tanduk dan kuku", tidak boleh ada dua komputer dengan satu alamat IP tempatan, iaitu, dalam contoh di atas ia bermaksud bahawa satu komputer dengan alamat 192.168.0.244 dalam satu syarikat, yang kedua dengan alamat yang sama - di syarikat lain. Dalam syarikat yang sama terdapat dua komputer dengan alamat 192.168.0.244 mereka tidak akan serasi.

Anda mungkin pernah mendengar istilah seperti luaran IP dan dalaman IP, pemalar (IP statik) dan pembolehubah (dinamik) IP. Secara ringkas tentang mereka:

  • luaran IP- ini betul-betul sama IP, yang diberikan kepada anda oleh pembekal, i.e. Alamat unik anda di Internet, sebagai contoh, - 85.144.24.122
  • dalaman IP, adalah tempatan IP, iaitu awak IP V rangkaian tempatan, Sebagai contoh, - 192.168.1.3
  • statik IP- Ini IP, yang tidak berubah dengan setiap sambungan, i.e. ditugaskan kepadamu dengan tegas dan selama-lamanya
  • dinamik IP, terapung IP-alamat yang berubah dengan setiap sambungan

Jenis awak IP(statik atau dinamik) bergantung pada tetapan pembekal.

Apakah itu topeng alamat (subnet)

Konsep subnet telah diperkenalkan supaya kita boleh menyerlahkan bahagian IP- alamat satu organisasi, sebahagian daripada organisasi lain, dsb. Subnet ialah julat alamat IP yang dianggap milik rangkaian tempatan yang sama. Apabila bekerja pada rangkaian tempatan, maklumat dihantar terus kepada penerima. Jika data ditujukan untuk komputer dengan alamat IP yang bukan milik rangkaian tempatan, maka peraturan khas digunakan untuk mengira laluan untuk pemajuan dari satu rangkaian ke rangkaian yang lain.

Topeng ialah parameter yang memberitahu perisian berapa banyak komputer digabungkan kumpulan ini(subnet). Topeng alamat mempunyai struktur yang sama seperti alamat IP itu sendiri: ia adalah satu set empat kumpulan nombor, setiap satunya boleh berada dalam julat dari 0 hingga 255 . Pada masa yang sama, daripada kurang nilai topeng, mereka lebih banyak komputer bersatu ke dalam subnet ini. Untuk rangkaian syarikat kecil topeng biasanya kelihatan seperti 255.255.255.x(contohnya, 255.255.255.224). Topeng rangkaian diberikan kepada komputer bersama-sama dengan alamat IP. Jadi, sebagai contoh, rangkaian 192.168.0.0 dengan topeng 255.255.255.0 mungkin mengandungi komputer dengan alamat daripada 192.168.0.1 sebelum ini 192.168.254 192.168.0.0 dengan topeng 255.255.255.128 membenarkan alamat dari 192.168.0.1 sebelum ini 192.168.0.127 . Saya rasa maksudnya jelas. Sebagai peraturan, rangkaian dengan bilangan komputer yang kecil mungkin digunakan oleh pembekal untuk menyimpan alamat IP. Sebagai contoh, pelanggan boleh diberikan alamat dengan topeng 255.255.255.252 . Subnet ini mengandungi hanya dua komputer.

Selepas komputer menerima alamat IP dan mengetahui nilai topeng subnet, program boleh mula berfungsi dalam subnet tempatan ini. Walau bagaimanapun, untuk bertukar maklumat dengan komputer lain di rangkaian global, anda perlu mengetahui peraturan tempat untuk menghantar maklumat rangkaian luaran. Untuk tujuan ini, ciri seperti alamat Gateway digunakan.

Apakah Gateway?

Gerbang ialah peranti (komputer atau penghala) yang memajukan maklumat antara subnet IP yang berbeza. Jika program menentukan (melalui IP dan mask) bahawa alamat destinasi bukan sebahagian daripada subnet tempatan, maka ia menghantar data ini kepada peranti yang bertindak sebagai pintu masuk. Dalam tetapan protokol, nyatakan alamat IP peranti sedemikian.

Adakah anda ingin tahu dan dapat melakukan lebih banyak perkara sendiri?

Kami menawarkan anda latihan dalam bidang berikut: komputer, program, pentadbiran, pelayan, rangkaian, pembinaan laman web, SEO dan banyak lagi. Ketahui butirannya sekarang!

Untuk berfungsi hanya dalam rangkaian tempatan, get laluan mungkin tidak ditentukan.

Untuk pengguna individu menyambung ke Internet, atau untuk perniagaan kecil mempunyai saluran sambungan tunggal, sistem harus mempunyai hanya satu alamat get laluan - ini adalah alamat peranti yang mempunyai sambungan Internet. Jika terdapat berbilang laluan, akan ada berbilang pintu masuk. Dalam kes ini, jadual penghalaan digunakan untuk menentukan laluan data.

Apakah jadual penghalaan

Jadi kami lancar sampai ke mereka. Dan sebagainya.. Apakah jenis meja ini?

Organisasi atau pengguna mungkin mempunyai berbilang titik sambungan Internet (contohnya, saluran sandaran sekiranya berlaku masalah dengan pembekal pertama, tetapi Internet masih sangat diperlukan) atau mengandungi beberapa IP-rangkaian. Dalam kes ini, supaya sistem mengetahui jalan mana (melalui gerbang mana) untuk menghantar maklumat ini atau itu, jadual penghalaan digunakan. Jadual penghalaan untuk setiap gerbang menunjukkan subnet Internet yang mana maklumat harus dihantar melaluinya. Dalam kes ini, untuk beberapa get laluan anda boleh menetapkan julat yang sama, tetapi dengan pada harga yang berbeza penghantaran data: sebagai contoh, maklumat akan dihantar melalui saluran yang mempunyai paling banyak kos rendah, dan jika ia gagal untuk satu sebab atau yang lain, sambungan termurah yang tersedia seterusnya akan digunakan secara automatik.

Apakah port rangkaian

Apabila memindahkan data kecuali IP-alamat penghantar dan penerima, paket maklumat mengandungi nombor port. Contoh: 192.168.1.1: 80 , - V dalam kes ini 80 - ini ialah nombor port. Port ialah nombor yang digunakan semasa menerima dan menghantar data untuk mengenal pasti proses (program) yang sepatutnya memproses data. Jadi, jika paket dihantar ke 80 port ke-, ini menunjukkan bahawa maklumat itu bertujuan untuk pelayan HTTP.

Nombor port dengan 1 ke sebelum ini 1023 -th diberikan kepada program tertentu (yang dipanggil port terkenal). Pelabuhan dengan nombor 1024 -65 535 boleh digunakan dalam program pembangunan sendiri. Di mana kemungkinan konflik mesti diputuskan oleh program sendiri dengan memilih Pelabuhan bebas. Dalam erti kata lain, port akan diedarkan secara dinamik: ada kemungkinan bahawa pada kali seterusnya program bermula, ia akan memilih nilai port yang berbeza, melainkan, sudah tentu, anda secara manual menetapkan port kepadanya melalui tetapan.

Apakah alamat MAC

Hakikatnya adalah bahawa paket yang dihantar pada rangkaian dialamatkan kepada komputer bukan dengan nama mereka dan bukan oleh IP-alamat. Paket ini bertujuan untuk peranti dengan alamat tertentu, yang dipanggil MAC-alamat.

Alamat MAC- ini adalah alamat yang unik peranti rangkaian, yang disertakan di dalamnya oleh pengeluar peralatan, i.e. ini adalah sejenis nombor bercop anda kad rangkaian. Separuh masa MAC-alamat ialah pengecam pengeluar, yang kedua ialah nombor unik peranti ini.

Biasanya MAC-alamat kadangkala diperlukan untuk pengenalan, katakan, dengan pembekal (jika pembekal menggunakan alamat popi yang mengikat dan bukannya kata laluan log masuk) atau semasa menyediakan penghala.

Di mana untuk melihat semua tetapan rangkaian

Saya hampir terlupa untuk mengatakan beberapa perkataan tentang di mana anda boleh melihat dan mengubah semua ini.

13/10/06 5.6K

Kebanyakan kita mengenali TCP/IP sebagai gam yang menyatukan Internet. Tetapi hanya sedikit yang dapat memberikan penerangan yang meyakinkan tentang protokol ini dan cara ia berfungsi. Jadi apakah sebenarnya TCP/IP itu?

TCP/IP ialah satu cara untuk bertukar-tukar maklumat antara komputer yang disambungkan ke rangkaian. Tidak kira sama ada mereka adalah sebahagian daripada rangkaian yang sama atau disambungkan rangkaian berasingan. Tidak kira salah seorang daripada mereka mungkin komputer Cray dan yang lain Macintosh. TCP/IP ialah piawaian bebas platform yang merapatkan jurang antara komputer yang berbeza, sistem operasi dan rangkaian. Ia adalah protokol yang mentadbir Internet secara global dan sebahagian besarnya disebabkan oleh rangkaian TCP/IP.

Memahami TCP/IP terutamanya melibatkan kebolehan memahami set protokol misteri yang digunakan oleh hos TCP/IP untuk bertukar maklumat. Mari lihat beberapa protokol ini dan ketahui perkara yang membentuk pembalut TCP/IP.

Asas TCP/IP

TCP/IP ialah singkatan untuk Transmission Control Protocol/Internet Protocol. Dalam terminologi rangkaian komputer, protokol ialah piawaian yang telah dipersetujui yang membolehkan dua komputer bertukar data. Sebenarnya, TCP/IP bukanlah satu protokol, tetapi beberapa. Inilah sebabnya mengapa anda sering mendengar ia dirujuk sebagai suite, atau suite protokol, dengan TCP dan IP menjadi dua yang utama.

Perisian untuk TCP/IP, pada komputer anda, ialah pelaksanaan khusus platform bagi TCP, IP dan ahli keluarga TCP/IP yang lain. Ia biasanya juga mengandungi aplikasi peringkat tinggi seperti FTP ( Pemindahan fail Protokol, Protokol Pemindahan Fail), yang membolehkannya melalui baris arahan menguruskan perkongsian fail melalui Internet.

TCP/IP berasal daripada penyelidikan yang dibiayai oleh Agensi Projek Penyelidikan Lanjutan (ARPA) kerajaan AS pada 1970-an. Protokol ini dibangunkan supaya rangkaian komputer pusat penyelidikan di seluruh dunia dapat dihubungkan dalam bentuk "rangkaian rangkaian" maya (internetwork). Internet asal dicipta dengan menukar konglomerat rangkaian komputer sedia ada yang dipanggil ARPAnet menggunakan TCP/IP.

Sebab TCP/IP sangat penting hari ini ialah ia membenarkan rangkaian bersendirian untuk menyambung ke Internet atau bergabung untuk mencipta intranet peribadi. Rangkaian komputer yang membentuk intranet disambungkan secara fizikal melalui peranti yang dipanggil penghala atau penghala IP. Penghala ialah komputer yang menghantar paket data dari satu rangkaian ke rangkaian yang lain. Pada intranet berasaskan TCP/IP, maklumat dihantar dalam unit diskret yang dipanggil paket IP atau datagram IP. Terima kasih kepada perisian TCP/IP, semua komputer disambungkan ke rangkaian komputer, menjadi "saudara terdekat". Ia pada asasnya menyembunyikan penghala dan seni bina rangkaian asas dan menjadikan semuanya kelihatan seperti satu rangkaian yang besar. Sama seperti menyambung ke Rangkaian Ethernet diiktiraf oleh ID Ethernet 48-bit, sambungan intranet dikenal pasti oleh alamat IP 32-bit, yang kami nyatakan dalam bentuk nombor perpuluhan, dipisahkan dengan titik (contohnya, 128.10.2.3). Mengambil alamat IP komputer jauh, komputer di intranet atau di Internet boleh menghantar data kepadanya seolah-olah ia adalah sebahagian daripada rangkaian fizikal yang sama.

TCP/IP menyediakan penyelesaian kepada masalah data antara dua komputer yang disambungkan ke intranet yang sama tetapi pada rangkaian fizikal yang berbeza. Penyelesaian ini terdiri daripada beberapa bahagian, dengan setiap ahli keluarga protokol TCP/IP menyumbang kepada matlamat keseluruhan. IP, protokol paling asas bagi suite TCP/IP, mengangkut datagram IP merentasi intranet dan berprestasi fungsi penting Dipanggil penghalaan, ia pada asasnya memilih laluan yang akan diambil oleh datagram dari titik A ke titik B dan menggunakan penghala untuk "melompat" antara rangkaian.

TCP adalah lebih protokol tahap tinggi, yang membenarkan program aplikasi berjalan pada komputer hos yang berbeza pada rangkaian untuk bertukar-tukar aliran data. TCP membahagikan aliran data kepada rantai yang dipanggil segmen TCP dan menghantarnya menggunakan IP. Dalam kebanyakan kes, setiap segmen TCP dihantar dalam satu datagram IP. Walau bagaimanapun, jika perlu, TCP akan membahagikan segmen kepada berbilang datagram IP yang sesuai dengan bingkai data fizikal yang digunakan untuk memindahkan maklumat antara komputer pada rangkaian. Oleh kerana IP tidak menjamin bahawa datagram akan diterima dalam urutan yang sama di mana ia dihantar, TCP memasang semula segmen TCP di hujung laluan yang lain untuk membentuk aliran data yang berterusan. FTP dan telnet adalah dua contoh popular program aplikasi TCP/IP, yang bergantung pada penggunaan TCP.

Satu lagi ahli penting suite TCP/IP ialah User Datagram Protocol (UDP), yang serupa dengan TCP tetapi lebih primitif. TCP ialah protokol "dipercayai" kerana ia menyediakan semakan ralat dan mesej pengesahan untuk memastikan data sampai ke destinasinya tanpa rasuah. UDP ialah protokol "tidak boleh dipercayai" kerana ia tidak menjamin bahawa datagram akan tiba dalam susunan ia dihantar, malah ia akan tiba sama sekali. Jika kebolehpercayaan adalah syarat yang diingini, perisian akan diperlukan untuk melaksanakannya. Tetapi UDP masih mempunyai tempatnya dalam dunia TCP/IP, dan digunakan dalam banyak program. Digunakan program SNMP(Protokol Pengurusan Rangkaian Mudah), yang dilaksanakan dalam banyak penjelmaan TCP/IP, adalah salah satu contoh program UDP.

Protokol TCP/IP lain memainkan peranan yang kurang menonjol, tetapi sama pentingnya peranan penting dalam pengendalian rangkaian TCP/IP. Contohnya, Address Resolution Protocol (ARP) menukar alamat IP kepada fizikal alamat rangkaian, seperti pengecam Ethernet. Protokol berkaitan - protokol penukaran songsang alamat (Reverse Address Resolution Protocol, RARP) - melakukan tindakan terbalik, menukar alamat rangkaian fizikal kepada alamat IP. Internet Control Message Protocol (ICMP) ialah protokol pengiring yang menggunakan IP untuk menukar maklumat kawalan dan mengawal ralat yang berkaitan dengan penghantaran paket IP. Sebagai contoh, jika penghala tidak boleh menghantar datagram IP, ia menggunakan ICMP untuk memaklumkan pengirim bahawa terdapat masalah. Penerangan Ringkas Beberapa protokol lain yang "bersembunyi di bawah payung" TCP/IP disenaraikan dalam bar sisi.

Penerangan ringkas tentang keluarga protokol TCP/IP dengan singkatan
ARP (Address Resolution Protocol): Menukar alamat IP 32-bit kepada alamat fizikal rangkaian komputer, sebagai contoh, ke dalam alamat Ethernet 48-bit.

FTP (Protokol Pemindahan Fail): Membolehkan anda memindahkan fail dari satu komputer ke komputer lain menggunakan sambungan TCP. Protokol pemindahan fail yang berkaitan tetapi kurang biasa, Trivial File Transfer Protocol (TFTP), menggunakan UDP dan bukannya TCP untuk memindahkan fail.

ICMP (Internet Control Message Protocol): Membenarkan penghala IP menghantar mesej ralat dan maklumat kawalan penghala IP lain dan hos rangkaian. Mesej ICMP "perjalanan" sebagai medan data datagram IP dan mesti dilaksanakan dalam semua varian IP.

IGMP (Internet Group Management Protocol): Membenarkan datagram IP menjadi multicast antara komputer yang tergolong dalam kumpulan yang sesuai.

IP (Protokol Internet, Protokol Internet): Protokol peringkat rendah yang mengarahkan paket data melalui rangkaian berasingan yang dipautkan bersama oleh penghala untuk membentuk Internet atau intranet. Data bergerak dalam bentuk paket yang dipanggil IP datagrams.

RARP (Reverse Address Resolution Protocol): Menukar alamat rangkaian fizikal kepada alamat IP.

SMTP (Simple Mail Transfer Protocol): Mentakrifkan format mesej yang pelanggan SMTP yang dijalankan pada satu komputer boleh gunakan untuk memajukan E-mel ke pelayan SMTP yang berjalan pada komputer lain.

TCP (Transmission Control Protocol): Protokol berorientasikan sambungan yang menghantar data sebagai aliran bait. Data dihantar dalam paket—segmen TCP—yang terdiri daripada pengepala dan data TCP. TCP ialah protokol "boleh dipercayai" kerana ia menggunakan jumlah semak untuk menyemak integriti data dan menghantar pengesahan untuk memastikan data yang dihantar diterima tanpa rasuah.

UDP (User Datagram Protocol): Protokol bebas sambungan yang menghantar data dalam paket yang dipanggil datagram UDP. UDP ialah protokol "tidak boleh dipercayai" kerana pengirim tidak menerima maklumat yang menunjukkan sama ada datagram sebenarnya diterima.

Seni bina TCP/IP

Pereka rangkaian sering menggunakan model ISO/OSI (International Standards Organization/Open Systems Interconnect) tujuh lapisan. sistem terbuka), yang menerangkan seni bina rangkaian. Setiap tahap dalam model ini sepadan dengan satu tahap kefungsian rangkaian. Di bahagian paling bawah terletak lapisan fizikal, yang mewakili persekitaran fizikal yang melaluinya data “mengembara”—dengan kata lain, sistem kabel rangkaian komputer. Di atasnya ada lapisan pautan, atau lapisan pautan data, yang fungsinya disediakan oleh kad antara muka rangkaian. Di bahagian paling atas ialah lapisan program aplikasi, di mana program yang menggunakan fungsi utiliti rangkaian dijalankan.

Rajah menunjukkan bagaimana TCP/IP sesuai dengan model ISO/OSI. Angka ini juga menggambarkan lapisan TCP/IP dan menunjukkan hubungan antara protokol utama. Apabila memindahkan blok data daripada aplikasi rangkaian ke kad penyesuai rangkaian ia secara berurutan melalui beberapa modul TCP/IP. Pada masa yang sama, pada setiap langkah ia dilengkapkan dengan maklumat yang diperlukan untuk modul TCP/IP yang setara di hujung rantai yang lain. Pada masa data sampai kad rangkaian, ia mewakili bingkai Ethernet standard, dengan mengandaikan bahawa rangkaian adalah berdasarkan antara muka ini. Perisian TCP/IP di hujung penerima mencipta semula data asal untuk program penerima dengan menangkap Bingkai Ethernet dan menghantarnya dalam susunan terbalik melalui set modul TCP/IP. (Satu daripada cara terbaik fikirkan struktur dalaman TCP/IP berbaloi menggunakan program "perisik" untuk mencari maklumat yang ditambahkan di dalam bingkai "terbang" melalui rangkaian pelbagai modul TCP/IP.)

Lapisan rangkaian dan protokol TCP/IP

ISO/OSI TCP/IP ___________________________ ___________________________ | Lapisan Aplikasi | | | |________________________________________________| | _________ _________ | ___________________________ | |Rangkaian | |Rangkaian | | Tahap | Lapisan Persembahan | | |program| |program| | digunakan |________________________________________________| | |_________| |_________| | program ___________________________ | | | Tahap sesi | | | |________________________________________________| |__________________________| | | ___________________________ _____|________________|______ | Lapisan pengangkutan| | TCP UDP | Pengangkutan |_____________________________________| |_____|______|______| peringkat | | ___________________________ _____|________________|______ | Lapisan rangkaian| | | | | Rangkaian |_____________________________________| | ---->IP<--- | уровень |__________________________| _________ _____________________________ _______| Сетевая |________ | Уровень звена данных | | ARP<->| bayaran |<->RARP | Tahap |________________________________________________| |_______|_________|_______| pautan | data ___________________________ | | Lapisan fizikal | _____________|___________ Fizikal |______________________________| Tahap sambungan kabel rangkaian

Bahagian kiri rajah ini menunjukkan lapisan model ISO/OSI. Bahagian kanan rajah menggambarkan korelasi TCP/IP dengan model ini.

Untuk menggambarkan peranan yang dimainkan oleh TCP/IP dalam rangkaian komputer dunia sebenar, pertimbangkan perkara yang berlaku apabila penyemak imbas Web menggunakan HTTP (HyperText Transfer Protocol) untuk mendapatkan semula halaman data HTML daripada pelayan Web yang disambungkan ke Internet. . Untuk membentuk sambungan maya ke pelayan, penyemak imbas menggunakan abstraksi perisian peringkat tinggi yang dipanggil soket. Dan untuk mendapatkan semula halaman Web, ia menghantar arahan GET HTTP ke pelayan, menulisnya ke soket. Perisian soket pula menggunakan TCP untuk menghantar bit dan bait yang membentuk arahan GET ke pelayan Web. TCP membahagikan data dan menghantar segmen individu ke modul IP, yang memajukan segmen dalam datagram ke pelayan Web.

Jika penyemak imbas dan pelayan berjalan pada komputer yang disambungkan ke rangkaian fizikal yang berbeza (seperti yang biasa berlaku), datagram dihantar dari rangkaian ke rangkaian sehingga ia mencapai satu yang pelayan disambungkan secara fizikal. Akhirnya datagram sampai ke destinasinya dan dipasang semula supaya pelayan Web, yang membaca rantaian data dari soketnya, menerima aliran data yang berterusan. Untuk penyemak imbas dan pelayan, data yang ditulis pada soket pada satu hujung secara ajaib "muncul" di hujung yang lain. Tetapi di antara peristiwa-peristiwa ini, pelbagai interaksi kompleks berlaku untuk mencipta ilusi pemindahan data berterusan antara rangkaian komputer.

Dan itu hampir semua yang dilakukan oleh TCP/IP: mengubah banyak rangkaian kecil menjadi satu rangkaian besar dan menyediakan perkhidmatan yang program aplikasi perlu berkomunikasi antara satu sama lain melalui Internet yang terhasil.

Kesimpulan ringkas

Terdapat banyak lagi yang boleh dikatakan tentang TCP/IP, tetapi terdapat tiga perkara utama:

* TCP/IP ialah satu set protokol yang membenarkan rangkaian fizikal disambungkan bersama untuk membentuk Internet. TCP/IP menghubungkan rangkaian individu untuk membentuk rangkaian komputer maya, di mana komputer hos individu dikenal pasti bukan oleh alamat rangkaian fizikal, tetapi oleh alamat IP.
* TCP/IP menggunakan seni bina berlapis yang menerangkan dengan jelas perkara yang dilakukan oleh setiap protokol. TCP dan UDP menyediakan utiliti pemindahan data peringkat tinggi untuk program rangkaian, dan kedua-duanya bergantung pada IP untuk mengangkut paket data. IP bertanggungjawab untuk menghalakan paket ke destinasi mereka.
* Data bergerak antara dua program aplikasi yang berjalan pada hos Internet "mengembara" ke atas dan ke bawah tindanan TCP/IP pada hos tersebut. Maklumat yang ditambahkan oleh modul TCP/IP pada hujung penghantaran "dipotong" oleh modul TCP/IP yang sepadan pada hujung penerima dan digunakan untuk mencipta semula data asal.

baik buruk

Operasi Internet global adalah berdasarkan satu set (timbunan) protokol TCP/IP. Tetapi istilah ini kelihatan rumit hanya pada pandangan pertama. Sebenarnya Timbunan protokol TCP/IP ialah satu set peraturan mudah untuk bertukar-tukar maklumat, dan peraturan ini sebenarnya diketahui oleh anda, walaupun anda mungkin tidak menyedarinya. Ya, begitulah keadaannya; pada asasnya, tiada apa-apa yang baharu dalam prinsip yang mendasari protokol TCP/IP: semua yang baharu sudah lama dilupakan.

Seseorang boleh belajar dengan dua cara:

  1. Melalui hafalan formal bodoh kaedah formula untuk menyelesaikan masalah standard (yang kini kebanyakannya diajar di sekolah). Latihan sedemikian tidak berkesan. Pasti anda telah melihat panik dan ketidakberdayaan sepenuhnya seorang akauntan apabila menukar versi perisian pejabat - dengan sedikit perubahan dalam urutan klik tetikus yang diperlukan untuk melakukan tindakan biasa. Atau adakah anda pernah melihat seseorang jatuh terpinga-pinga apabila menukar antara muka desktop?
  2. Melalui pemahaman intipati masalah, fenomena, corak. Melalui pemahaman prinsip membina sistem ini atau itu. Dalam kes ini, mempunyai pengetahuan ensiklopedia tidak memainkan peranan yang besar - maklumat yang hilang mudah dicari. Perkara utama ialah mengetahui apa yang perlu dicari. Dan ini tidak memerlukan pengetahuan formal tentang subjek, tetapi pemahaman intipati.

Dalam artikel ini, saya mencadangkan untuk mengambil jalan kedua, kerana memahami prinsip yang mendasari Internet akan memberi anda peluang untuk berasa yakin dan bebas di Internet - cepat menyelesaikan masalah yang timbul, merumuskan masalah dengan betul dan berkomunikasi dengan yakin dengan sokongan teknikal.

Jadi, mari kita mulakan.

Prinsip pengendalian protokol Internet TCP/IP sememangnya sangat mudah dan sangat menyerupai kerja perkhidmatan pos Soviet kami.

Ingat bagaimana mel biasa kami berfungsi. Mula-mula, anda menulis surat di atas sekeping kertas, kemudian memasukkannya ke dalam sampul surat, menutupnya, menulis alamat pengirim dan penerima di belakang sampul surat, dan kemudian bawa ke pejabat pos terdekat. Seterusnya, surat itu melalui rangkaian pejabat pos ke pejabat pos terdekat penerima, dari mana ia dihantar oleh posmen ke alamat yang ditentukan penerima dan dimasukkan ke dalam peti melnya (dengan nombor pangsapurinya) atau diserahkan sendiri. Itu sahaja, surat sudah sampai kepada penerima. Apabila penerima surat ingin menjawab anda, dia akan menukar alamat penerima dan pengirim dalam surat jawapannya, dan surat itu akan dihantar kepada anda di sepanjang rantai yang sama, tetapi dalam arah yang bertentangan.

Sampul surat itu akan berbunyi seperti ini:

Alamat penghantar: Dari siapa: Ivanov Ivan Ivanovich di mana: Ivanteevka, st. Bolshaya, 8, apt. 25 Alamat penerima: Kepada siapa: Petrov Petr Petrovich di mana: Moscow, lorong Usachevsky, 105, apt. 110

Kini kami bersedia untuk mempertimbangkan interaksi komputer dan aplikasi di Internet (dan pada rangkaian tempatan juga). Sila ambil perhatian bahawa analogi dengan mel biasa akan hampir lengkap.

Setiap komputer (aka: nod, hos) di Internet juga mempunyai alamat unik, yang dipanggil alamat IP (Internet Protocol Address), contohnya: 195.34.32.116. Alamat IP terdiri daripada empat nombor perpuluhan (0 hingga 255) yang dipisahkan oleh titik. Tetapi mengetahui hanya alamat IP komputer tidak mencukupi, kerana... Akhirnya, bukan komputer itu sendiri yang bertukar maklumat, tetapi aplikasi yang berjalan padanya. Dan beberapa aplikasi boleh berjalan serentak pada komputer (contohnya, pelayan mel, pelayan web, dll.). Untuk menghantar surat kertas biasa, tidak cukup untuk mengetahui hanya alamat rumah - anda juga perlu mengetahui nombor apartmen. Selain itu, setiap aplikasi perisian mempunyai nombor serupa yang dipanggil nombor port. Kebanyakan aplikasi pelayan mempunyai nombor standard, contohnya: perkhidmatan mel terikat pada port nombor 25 (mereka juga berkata: "mendengar" port, menerima mesej padanya), perkhidmatan web terikat pada port 80, FTP ke port 21 , dan sebagainya.

Oleh itu, kami mempunyai analogi yang hampir lengkap berikut dengan alamat pos biasa kami:

"alamat rumah" = "IP komputer" "nombor apartmen" = "nombor port"

Dalam rangkaian komputer yang beroperasi menggunakan protokol TCP/IP, analog surat kertas dalam sampul surat ialah beg plastik, yang mengandungi data yang dihantar dan maklumat alamat sebenar - alamat pengirim dan alamat penerima, contohnya:

Alamat sumber: IP: 82.146.49.55 Port: 2049 Alamat penerima (Alamat destinasi): IP: 195.34.32.116 Port: 53 Butiran pakej: ...

Sudah tentu, pakej juga mengandungi maklumat perkhidmatan, tetapi ini tidak penting untuk memahami intipati.

Sila ambil perhatian gabungan: "Alamat IP dan nombor port" - dipanggil "soket".

Dalam contoh kami, kami menghantar paket dari soket 82.146.49.55:2049 ke soket 195.34.32.116:53, i.e. paket akan pergi ke komputer dengan alamat IP 195.34.32.116, ke port 53. Dan port 53 sepadan dengan pelayan pengecaman nama (pelayan DNS), yang akan menerima paket ini. Mengetahui alamat pengirim, pelayan ini akan dapat, selepas memproses permintaan kami, untuk menjana paket tindak balas yang akan pergi ke arah yang bertentangan dengan soket penghantar 82.146.49.55:2049, yang bagi pelayan DNS akan menjadi soket penerima.

Sebagai peraturan, interaksi dijalankan mengikut skema "pelayan-pelanggan": "pelanggan" meminta beberapa maklumat (contohnya, halaman laman web), pelayan menerima permintaan, memprosesnya dan menghantar hasilnya. Nombor port aplikasi pelayan terkenal, contohnya: pelayan mel SMTP "mendengar" pada port 25, pelayan POP3 yang membenarkan membaca mel dari peti mel anda "mendengar" pada port 110, pelayan web mendengar pada port 80, dsb. .

Kebanyakan program pada komputer rumah adalah pelanggan - contohnya, klien e-mel Outlook, IE, pelayar web FireFox, dsb.

Nombor port pada klien tidak ditetapkan seperti pada pelayan, tetapi diberikan secara dinamik oleh sistem pengendalian. Port pelayan tetap biasanya mempunyai nombor sehingga 1024 (tetapi terdapat pengecualian), dan port klien bermula selepas 1024.

Pengulangan ialah ibu pengajaran: IP ialah alamat komputer (nod, hos) pada rangkaian, dan port ialah nombor aplikasi tertentu yang dijalankan pada komputer ini.

Walau bagaimanapun, sukar bagi seseorang untuk mengingati alamat IP digital - adalah lebih mudah untuk bekerja dengan nama abjad. Lagipun, lebih mudah untuk mengingati perkataan daripada satu set nombor. Ini dilakukan - sebarang alamat IP digital boleh dikaitkan dengan nama alfanumerik. Akibatnya, sebagai contoh, bukannya 82.146.49.55, anda boleh menggunakan nama Dan perkhidmatan nama domain (DNS) (Sistem Nama Domain) mengendalikan penukaran nama domain kepada alamat IP digital.

Mari kita lihat dengan lebih dekat cara ini berfungsi. ISP anda sama ada secara eksplisit (di atas kertas, untuk persediaan sambungan manual) atau secara tersirat (melalui persediaan sambungan automatik) memberikan anda alamat IP pelayan nama (DNS). Pada komputer dengan alamat IP ini terdapat aplikasi (pelayan nama) berjalan yang mengetahui semua nama domain di Internet dan alamat IP digitalnya yang sepadan. Pelayan DNS "mendengar" port 53, menerima permintaan kepadanya dan mengeluarkan respons, contohnya:

Permintaan daripada komputer kami: "Apakah alamat IP yang sepadan dengan nama www.site?" Jawapan pelayan: "82.146.49.55."

Sekarang mari kita lihat apa yang berlaku apabila anda menaip nama domain (URL) tapak ini () dalam penyemak imbas anda dan klik , sebagai balasan daripada pelayan web anda menerima halaman tapak ini.

Sebagai contoh:

Alamat IP komputer kami: 91.76.65.216 Pelayar: Internet Explorer (IE), pelayan DNS (strim): 195.34.32.116 (milik anda mungkin berbeza), Halaman yang ingin kami buka: www.site.

Taipkan nama domain dalam bar alamat penyemak imbas dan klik . Seterusnya, sistem pengendalian melakukan kira-kira tindakan berikut:

Permintaan (lebih tepat, paket dengan permintaan) dihantar ke pelayan DNS pada soket 195.34.32.116:53. Seperti yang dibincangkan di atas, port 53 sepadan dengan pelayan DNS, aplikasi yang menyelesaikan nama. Dan pelayan DNS, setelah memproses permintaan kami, mengembalikan alamat IP yang sepadan dengan nama yang dimasukkan.

Dialognya seperti ini:

Alamat IP yang sepadan dengan nama itu www.site? - 82.146.49.55 .

Seterusnya, komputer kami mewujudkan sambungan ke port 80 komputer 82.146.49.55 dan menghantar permintaan (paket permintaan) untuk menerima halaman. Port 80 sepadan dengan pelayan web. Port 80 biasanya tidak ditulis dalam bar alamat penyemak imbas, kerana... digunakan secara lalai, tetapi ia juga boleh dinyatakan secara eksplisit selepas titik bertindih - .

Setelah menerima permintaan daripada kami, pelayan web memprosesnya dan menghantar halaman dalam beberapa paket dalam HTML - bahasa penanda teks yang difahami oleh penyemak imbas.

Penyemak imbas kami, setelah menerima halaman, memaparkannya. Akibatnya, kami melihat halaman utama tapak ini pada skrin.

Mengapakah kita perlu memahami prinsip-prinsip ini?

Sebagai contoh, anda melihat tingkah laku pelik komputer anda - aktiviti rangkaian pelik, kelembapan, dsb. Apa yang perlu dilakukan? Buka konsol (klik butang "Mula" - "Jalankan" - taip cmd - "Ok"). Dalam konsol kami menaip arahan netstat -an dan klik . Utiliti ini akan memaparkan senarai sambungan yang telah ditetapkan antara soket komputer kami dan soket hos jauh. Jika kita melihat beberapa alamat IP asing dalam lajur "Alamat Luaran", dan port ke-25 selepas kolon, apakah maksudnya? (Ingat bahawa port 25 sepadan dengan pelayan mel?) Ini bermakna komputer anda telah mewujudkan sambungan ke beberapa pelayan mel (pelayan) dan menghantar beberapa surat melaluinya. Dan jika klien e-mel anda (Outlook misalnya) tidak berjalan pada masa ini, dan jika masih terdapat banyak sambungan sedemikian pada port 25, maka mungkin terdapat virus pada komputer anda yang menghantar spam bagi pihak anda atau memajukan kredit anda nombor kad bersama kata laluan kepada penyerang.

Juga, memahami prinsip Internet adalah perlu untuk mengkonfigurasi firewall dengan betul (dengan kata lain, firewall :)). Program ini (yang selalunya disertakan dengan antivirus) direka untuk menapis paket - "rakan" dan "musuh". Biarkan orang anda sendiri melalui, jangan benarkan orang yang tidak dikenali masuk. Contohnya, jika tembok api anda memberitahu anda bahawa seseorang ingin membuat sambungan ke beberapa port pada komputer anda. Benarkan atau tolak?

Dan yang paling penting, pengetahuan ini amat berguna apabila berkomunikasi dengan sokongan teknikal.

Akhir sekali, berikut ialah senarai port yang mungkin anda hadapi:

135-139 - port ini digunakan oleh Windows untuk mengakses sumber komputer yang dikongsi - folder, pencetak. Jangan buka port ini ke luar, i.e. ke rangkaian tempatan serantau dan Internet. Mereka harus ditutup dengan tembok api. Juga, jika pada rangkaian tempatan anda tidak melihat apa-apa dalam persekitaran rangkaian atau anda tidak kelihatan, maka ini mungkin disebabkan oleh fakta bahawa tembok api telah menyekat port ini. Oleh itu, port ini mesti dibuka untuk rangkaian tempatan, tetapi ditutup untuk Internet. 21 - pelabuhan FTP pelayan. 25 - pelabuhan pos SMTP pelayan. Pelanggan e-mel anda menghantar surat melaluinya. Alamat IP pelayan SMTP dan portnya (ke-25) hendaklah dinyatakan dalam tetapan klien mel anda. 110 - pelabuhan POP3 pelayan. Melaluinya, klien mel anda mengumpul surat daripada peti mel anda. Alamat IP pelayan POP3 dan portnya (ke-110) juga harus dinyatakan dalam tetapan klien mel anda. 80 - pelabuhan WEB-pelayan. 3128, 8080 - pelayan proksi (dikonfigurasikan dalam tetapan penyemak imbas).

Beberapa alamat IP khas:

127.0.0.1 ialah localhost, alamat sistem tempatan, i.e. alamat tempatan komputer anda. 0.0.0.0 - ini adalah bagaimana semua alamat IP ditetapkan. 192.168.xxx.xxx - alamat yang boleh digunakan sewenang-wenangnya pada rangkaian tempatan; ia tidak digunakan di Internet global. Mereka unik hanya dalam rangkaian tempatan. Anda boleh menggunakan alamat dari julat ini mengikut budi bicara anda, contohnya, untuk membina rangkaian rumah atau pejabat.

Apakah topeng subnet dan get laluan lalai (penghala, penghala)?

(Parameter ini ditetapkan dalam tetapan sambungan rangkaian).

Mudah sahaja. Komputer disambungkan ke rangkaian tempatan. Pada rangkaian tempatan, komputer secara langsung hanya "melihat" satu sama lain. Rangkaian tempatan disambungkan antara satu sama lain melalui gerbang (penghala, penghala). Subnet mask direka bentuk untuk menentukan sama ada komputer penerima tergolong dalam rangkaian tempatan yang sama atau tidak. Jika komputer penerima tergolong dalam rangkaian yang sama dengan komputer penghantar, maka paket dihantar kepadanya secara langsung, jika tidak, paket dihantar ke gerbang lalai, yang kemudian, menggunakan laluan yang diketahuinya, menghantar paket ke rangkaian lain, i.e. ke pejabat pos lain (dengan analogi dengan pejabat pos Soviet).

Akhir sekali, mari kita lihat maksud istilah yang tidak jelas ini:

TCP/IP ialah nama set protokol rangkaian. Malah, paket yang dihantar melalui beberapa lapisan. (Seperti di pejabat pos: mula-mula anda menulis surat, kemudian anda memasukkannya ke dalam sampul surat beralamat, kemudian pejabat pos meletakkan setem padanya, dsb.).

IP Protokol ialah protokol lapisan rangkaian yang dipanggil. Tugas peringkat ini adalah untuk menghantar paket IP dari komputer penghantar ke komputer penerima. Selain data itu sendiri, paket pada tahap ini mempunyai alamat IP sumber dan alamat IP penerima. Nombor port tidak digunakan pada peringkat rangkaian. Pelabuhan mana, i.e. aplikasi ditujukan kepada paket ini, sama ada paket ini dihantar atau hilang tidak diketahui pada tahap ini - ini bukan tugasnya, ini adalah tugas lapisan pengangkutan.

TCP dan UDP Ini adalah protokol lapisan pengangkutan yang dipanggil. Lapisan pengangkutan terletak di atas lapisan rangkaian. Pada tahap ini, port sumber dan port destinasi ditambahkan pada paket.

TCP ialah protokol berorientasikan sambungan dengan penghantaran paket yang terjamin. Pertama, paket khas ditukar untuk mewujudkan sambungan, sesuatu seperti jabat tangan berlaku (-Hello. -Hello. -Bolehkah kita berbual? -Ayo.). Kemudian paket dihantar ke sana ke mari melalui sambungan ini (perbualan sedang berjalan), dan ia diperiksa sama ada paket telah sampai ke penerima. Jika paket tidak diterima, ia dihantar semula ("ulang, saya tidak dengar").

UDP ialah protokol tanpa sambungan dengan penghantaran paket tidak terjamin. (Suka: menjerit sesuatu, tetapi sama ada mereka mendengar anda atau tidak - itu tidak penting).

Di atas lapisan pengangkutan ialah lapisan aplikasi. Pada peringkat ini, protokol seperti http, ftp dll. Contohnya HTTP dan FTP - gunakan yang boleh dipercayai protokol TCP, dan pelayan DNS beroperasi melalui protokol UDP yang tidak boleh dipercayai.

Bagaimana untuk melihat sambungan semasa?

Sambungan semasa boleh dilihat menggunakan arahan

Netstat -an

(parameter n menentukan untuk memaparkan alamat IP dan bukannya nama domain).

Perintah ini berjalan seperti ini:

"Mula" - "Jalankan" - taip cmd - "Ok". Dalam konsol yang muncul (tetingkap hitam), taip perintah netstat -an dan klik . Hasilnya ialah senarai sambungan yang telah ditetapkan antara soket komputer kami dan nod jauh.

Sebagai contoh kita dapat:

Sambungan aktif

Nama Alamat tempatan Alamat luar negeri
TCP 0.0.0.0:135 0.0.0.0:0 MENDENGAR
TCP 91.76.65.216:139 0.0.0.0:0 MENDENGAR
TCP 91.76.65.216:1719 212.58.226.20:80 DITUBUHKAN
TCP 91.76.65.216:1720 212.58.226.20:80 DITUBUHKAN
TCP 91.76.65.216:1723 212.58.227.138:80 TUTUP_TUNGGU
TCP 91.76.65.216:1724 212.58.226.8:80 DITUBUHKAN
...

Dalam contoh ini, 0.0.0.0:135 bermakna komputer kami mendengar (MENDENGAR) ke port 135 pada semua alamat IPnya dan bersedia untuk menerima sambungan daripada sesiapa sahaja di dalamnya (0.0.0.0:0) melalui protokol TCP.

91.76.65.216:139 - komputer kami mendengar port 139 pada alamat IPnya 91.76.65.216.

Baris ketiga bermakna bahawa sambungan kini telah diwujudkan (DIBUAT) antara mesin kami (91.76.65.216:1719) dan yang jauh (212.58.226.20:80). Port 80 bermaksud bahawa mesin kami membuat permintaan kepada pelayan web (saya sebenarnya mempunyai halaman terbuka dalam penyemak imbas).

Dalam artikel akan datang kita akan melihat cara menggunakan pengetahuan ini, mis.

Apabila artikel mula terbentuk, ia telah dirancang untuk memuatkannya menjadi satu, tetapi menjelang akhir, saiz artikel menjadi terlalu berat, ia telah memutuskan untuk membahagikan artikel itu kepada dua: teori rangkaian dan operasi subsistem rangkaian dalam Linux. Baiklah, mari kita mulakan dengan teori...

Timbunan protokol TCP/IP

Sebenarnya, apa itu rangkaian? bersih- ini adalah lebih daripada 2 komputer yang disambungkan antara satu sama lain melalui beberapa jenis wayar, saluran komunikasi, dalam contoh yang lebih kompleks - oleh beberapa jenis peralatan rangkaian dan bertukar maklumat antara satu sama lain mengikut peraturan tertentu. Peraturan ini "ditetapkan" Timbunan protokol TCP/IP.

Protokol Kawalan Penghantaran/Protokol Internet (timbunan protokol TCP/IP)- dalam istilah mudah, ini adalah satu set protokol berinteraksi tahap yang berbeza (ia boleh ditambah bahawa Setiap peringkat berinteraksi dengan yang jiran, iaitu, ia berlabuh, dan oleh itu timbunan , IMHO, lebih mudah difahami) mengikut mana data ditukar pada rangkaian. Setiap protokol ialah satu set peraturan mengikut mana pertukaran data berlaku. Jumlah Timbunan protokol TCP/IP- Ini set peraturan Soalan munasabah mungkin timbul di sini: mengapa mempunyai banyak protokol? Adakah mustahil untuk menukar segala-galanya menggunakan satu protokol?

Masalahnya ialah setiap protokol menerangkan dengan tegas kepada dia peraturan. Di samping itu, protokol dibahagikan kepada tahap kefungsian, yang membolehkan pengendalian peralatan dan perisian rangkaian menjadi lebih mudah, lebih telus dan melaksanakan pelbagai tugasan "mereka". Untuk membahagikan set protokol ini kepada tahap, ia telah dibangunkan Model rangkaian OSI(Bahasa Inggeris) Model Rujukan Asas Saling Sambungan Sistem Terbuka, 1978, ia juga merupakan model rujukan asas untuk interaksi sistem terbuka). model OSI terdiri daripada tujuh peringkat yang berbeza. Tahap bertanggungjawab untuk kawasan yang berasingan dalam operasi sistem komunikasi, tidak bergantung pada tahap bersebelahan - ia hanya menyediakan perkhidmatan tertentu. Setiap lapisan melaksanakan tugasnya mengikut satu set peraturan yang dipanggil protokol. Operasi model OSI boleh digambarkan dengan rajah berikut: Bagaimanakah data dipindahkan?

Daripada rajah itu jelas bahawa terdapat 7 peringkat rangkaian, yang terbahagi kepada: aplikasi, pembentangan, sesi, pengangkutan, rangkaian, saluran, fizikal. Setiap lapisan mengandungi set protokolnya sendiri. Senarai protokol mengikut tahap interaksi dibentangkan dengan baik di Wikipedia:

Timbunan protokol TCP/IP itu sendiri dibangunkan selari dengan penggunaan model OSI dan tidak "bersilang" dengannya, mengakibatkan sedikit percanggahan dalam ketidakpadanan timbunan protokol dan lapisan model OSI. Biasanya, dalam Timbunan TCP/IP 3 peringkat atas ( permohonan, pembentangan dan sesi) Model OSI digabungkan menjadi satu - digunakan . Oleh kerana timbunan sedemikian tidak menyediakan protokol pemindahan data bersatu, fungsi menentukan jenis data dipindahkan ke aplikasi. Dipermudahkan tafsiran susunan TCP/IP berbanding model OSI boleh diwakili seperti ini:

Model interaksi rangkaian ini juga dipanggil model DOD(dari borjuasi. Jabatan Pertahanan- Jabatan Pertahanan AS). Jadi, kami telah mempertimbangkan idea umum interaksi rangkaian. Untuk pemahaman yang lebih mendalam tentang intipati isu, saya boleh mengesyorkan memuat turun dan membaca buku ( Vito Amato "Asas mengatur rangkaian Cisco T1 dan T2"), di bawah.

Menangani

Dalam rangkaian yang dibina pada susunan protokol TCP/IP, setiap hos (komputer atau peranti yang disambungkan ke rangkaian) diberikan nombor perduaan 32-bit. Satu bentuk yang mudah untuk menulis alamat IP (IPv4) ialah sebagai empat nombor perpuluhan (dari 0 hingga 255) dipisahkan dengan titik, contohnya, 192.168.0.1. Secara umum, Alamat IP terbahagi kepada dua bahagian: alamat rangkaian (subnet). Dan alamat hos:

Seperti yang dapat dilihat dari ilustrasi, terdapat perkara seperti jaring Dan subnet. Saya berpendapat bahawa dari makna perkataan adalah jelas bahawa alamat IP dibahagikan kepada rangkaian, dan rangkaian, seterusnya, dibahagikan kepada subnet menggunakan topeng subnet(adalah lebih tepat untuk mengatakan: alamat hos boleh subnet). Pada mulanya, semua alamat IP dibahagikan kepada kumpulan tertentu (kelas alamat/rangkaian). Dan terdapat pengalamatan kelas, mengikut mana rangkaian dibahagikan kepada rangkaian terpencil yang ditentukan dengan ketat:

Adalah mudah untuk mengira bahawa secara keseluruhan dalam ruang alamat IP terdapat 128 rangkaian dengan 16,777,216 alamat kelas A, 16,384 rangkaian dengan 65,536 alamat kelas B dan 2,097,152 rangkaian dengan 256 alamat kelas C, serta 268,435,356 alamat dan 268,435,456 reserved. Dengan pertumbuhan Internet, sistem ini ternyata tidak berkesan dan digantikan CIDR(pengalamatan tanpa kelas), di mana bilangan alamat dalam rangkaian ditentukan oleh subnet mask.

Terdapat juga Pengelasan IP alamat, baik "swasta" dan "awam". Julat alamat berikut dikhaskan untuk rangkaian peribadi (aka rangkaian kawasan setempat):

  • 10.0.0.0 - 10.255.255.255 (10.0.0.0/8 atau 10/8),
  • 172.16.0.0 - 172.31.255.255 (172.16.0.0/12 atau 172.16/12),
  • 192.168.0.0 - 192.168.255.255 (192.168.0.0/16 atau 192.168/16).
  • 127.0.0.0 - 127.255.255.255 dikhaskan untuk antara muka gelung balik (tidak digunakan untuk pertukaran antara nod rangkaian), dipanggil. localhost

Sebagai tambahan kepada alamat hos, rangkaian TCP/IP mempunyai perkara seperti port. Port ialah ciri berangka bagi sesetengah sumber sistem. Port diperuntukkan kepada aplikasi yang berjalan pada hos rangkaian untuk berkomunikasi dengan aplikasi yang dijalankan pada hos rangkaian lain (termasuk aplikasi lain pada hos yang sama). Dari sudut pandangan perisian, port ialah kawasan memori yang dikawal oleh sesetengah perkhidmatan.

Bagi setiap protokol TCP dan UDP, piawaian mentakrifkan keupayaan untuk memperuntukkan sehingga 65536 port unik pada hos secara serentak, dikenal pasti melalui nombor dari 0 hingga 65535. Surat-menyurat antara nombor port dan perkhidmatan yang menggunakan nombor ini boleh dilihat dalam fail /etc/services atau di tapak web http:// www.iana.org/assignments/port-numbers. Keseluruhan julat port dibahagikan kepada 3 kumpulan:

  • 0 hingga 1023, dipanggil istimewa atau terpelihara (digunakan untuk sistem dan beberapa program popular)
  • 1024 - 49151 dipanggil port berdaftar.
  • 49151 - 65535 dipanggil port dinamik.

protokol IP, seperti yang dapat dilihat daripada ilustrasi di bawah TCP Dan UDP dalam hierarki protokol dan bertanggungjawab untuk menghantar dan menghala maklumat dalam rangkaian. Untuk melakukan ini, protokol IP membungkus setiap maklumat (paket TCP atau UDP) dalam paket lain - paket IP atau datagram IP, yang menyimpan pengepala tentang sumber, destinasi dan laluan.

Untuk menggunakan analogi dunia sebenar, rangkaian TCP/IP ialah sebuah bandar. Nama jalan dan lorong ialah rangkaian dan subnet. Nombor bangunan ialah alamat hos. Dalam bangunan, nombor pejabat/apartmen adalah pelabuhan. Lebih tepat lagi, port ialah peti mel di mana penerima (perkhidmatan) mengharapkan surat-menyurat tiba. Sehubungan itu, nombor port kabinet ialah 1, 2, dsb. biasanya diberikan kepada pengarah dan pengurus sebagai orang yang mempunyai keistimewaan, dan pekerja biasa mendapat nombor pejabat dengan jumlah yang besar. Semasa menghantar dan menghantar surat-menyurat, maklumat dibungkus dalam sampul surat (paket IP), yang menunjukkan alamat pengirim (ip dan port) dan alamat penerima (ip dan port). Secara ringkasnya, seperti ini...

Perlu diingatkan bahawa protokol IP tidak memahami port; TCP dan UDP bertanggungjawab untuk mentafsir port; dengan analogi, TCP dan UDP tidak memproses alamat IP.

Untuk tidak mengingati set nombor yang tidak boleh dibaca dalam bentuk alamat IP, tetapi untuk menunjukkan nama mesin dalam bentuk nama yang boleh difahami manusia, perkhidmatan seperti DNS (Perkhidmatan Nama Domain), yang mengurus penyelesaian nama hos kepada alamat IP dan merupakan pangkalan data teragih yang besar. Saya pasti akan menulis tentang perkhidmatan ini dalam siaran akan datang, tetapi buat masa ini cukup untuk kita mengetahui bahawa untuk menukar nama menjadi alamat dengan betul, daemon mesti berjalan pada mesin bernama atau sistem mesti dikonfigurasikan untuk menggunakan perkhidmatan DNS ISP.

Penghalaan

Mari lihat (diilustrasikan) contoh infrastruktur dengan berbilang subnet. Persoalannya mungkin timbul, bagaimana satu komputer boleh bersambung dengan yang lain? Bagaimanakah ia tahu ke mana hendak menghantar paket?

Untuk menyelesaikan masalah ini, rangkaian saling berkaitan pintu masuk (penghala). Gerbang- ini adalah hos yang sama, tetapi mempunyai sambungan kepada dua atau lebih rangkaian, yang boleh memindahkan maklumat antara rangkaian dan memajukan paket ke rangkaian lain. Dalam rajah tersebut, peranan pintu masuk dimainkan oleh Nenas Dan betik mempunyai 2 antara muka yang disambungkan ke rangkaian yang berbeza.

Untuk menentukan laluan penghantaran paket, IP menggunakan bahagian rangkaian alamat ( topeng subnet). Untuk menentukan laluan, setiap mesin pada rangkaian mempunyai jadual laluan(jadual penghalaan), yang menyimpan senarai rangkaian dan get laluan untuk rangkaian ini. IP "mencari" bahagian rangkaian alamat destinasi dalam paket yang berlalu, dan jika terdapat entri untuk rangkaian itu dalam jadual penghalaan, maka paket itu dihantar ke get laluan yang sesuai.

Di Linux, kernel sistem pengendalian menyimpan jadual penghalaan dalam fail /proc/net/route. Anda boleh melihat jadual penghalaan semasa dengan arahan netstat -rn(r - jadual penghalaan, n - jangan tukar IP kepada nama) atau laluan . Lajur pertama output arahan netstat -rn (Destinasi- destinasi) mengandungi alamat rangkaian (hos) janji temu. Dalam kes ini, apabila menentukan rangkaian, alamat biasanya berakhir dengan sifar. Lajur kedua (Gerbang)- alamat get laluan untuk hos/rangkaian yang dinyatakan dalam lajur pertama. Lajur ketiga (Genmask)- subnet mask yang laluan ini beroperasi. Bendera Lajur memberikan maklumat tentang alamat destinasi (U - laluan naik, N - laluan untuk rangkaian, H - laluan untuk hos, dsb.). Lajur MSS menunjukkan bilangan bait yang boleh dihantar pada satu masa, Tingkap- bilangan bingkai yang boleh dihantar sebelum menerima pengakuan, irtt- statistik penggunaan laluan, Saya menghadapi- menunjukkan antara muka rangkaian yang digunakan untuk laluan (eth0, eth1, dsb.)

Seperti yang anda lihat dalam contoh di bawah, entri pertama (baris) adalah untuk rangkaian 128.17.75, semua paket untuk rangkaian ini akan dihantar ke gerbang 128.17.75.20, iaitu alamat IP hos itu sendiri. Entri kedua ialah laluan lalai, yang digunakan untuk semua paket yang dihantar ke rangkaian yang tidak disenaraikan dalam jadual penghalaan ini. Di sini laluan melalui betik perumah (IP 128.17.75.98), yang boleh dianggap sebagai pintu ke dunia luar. Laluan ini mesti didaftarkan pada semua mesin pada rangkaian 128.17.75 yang mesti mempunyai akses kepada rangkaian lain. Entri ketiga dicipta untuk antara muka gelung balik. Alamat ini digunakan jika mesin perlu menyambung sendiri melalui TCP/IP. Entri terakhir dalam jadual penghalaan dibuat untuk IP 128.17.75.20 dan diarahkan ke antara muka lo, i.e. apabila mesin menyambung kepada dirinya sendiri di alamat 128.17.75.20, semua paket akan dihantar ke antara muka 127.0.0.1.

Jika tuan rumah terung ingin menghantar paket kepada hos zucchini, (sehubungan itu, paket akan menunjukkan penghantar - 128.17.75.20 dan penerima - 128.17.75.37), protokol IP akan menentukan berdasarkan jadual penghalaan bahawa kedua-dua hos tergolong dalam rangkaian yang sama dan akan menghantar paket terus ke rangkaian di mana zucchini akan menerimanya. Untuk meletakkannya dengan lebih terperinci... kad rangkaian menyiarkan permintaan ARP "Siapa IP 128.17.75.37, adakah ini menjerit 128.17.75.20?" semua mesin yang menerima mesej ini mengabaikannya, dan hos dengan alamat 128.17.75.37 membalas "Ini saya dan alamat MAC saya begini dan begini...", maka sambungan dan pertukaran data berlaku berdasarkan jadual arp, di mana surat-menyurat alamat IP-MAC dimasukkan. "Shouts", iaitu, paket ini dihantar kepada semua hos, ini berlaku kerana alamat MAC penerima ditentukan sebagai alamat siaran (FF:FF:FF:FF:FF:FF). Semua hos di rangkaian menerima paket sedemikian.

Contoh jadual penghalaan untuk hos terung:

# netstat -rn Jadual penghalaan IP Kernel Destination Gateway Genmask Flags Tetingkap MSS irtt Iface 128.17.75.0 128.17.75.20 255.255.255.0 UN 1500 0 0 eth0 default 128.17.75.98 128.17.75.98 . 0.0.1 127.0.0.1 255.0 0.0 UH 3584 0 0 lo 128.17.75.20 127.0.0.1 255.255.255.0 UH 3584 0 0 lo

Mari kita pertimbangkan situasi di mana tuan rumah terung mahu menghantar paket kepada hos, contohnya, buah pir atau lebih jauh lagi?.. Dalam kes ini, penerima paket akan - 128.17.112.21, protokol IP akan cuba mencari laluan untuk rangkaian 128.17.112 dalam jadual penghalaan, tetapi laluan ini tiada dalam jadual, jadi ia akan memilih laluan lalai, yang pintu masuknya betik(128.17.75.98). Setelah menerima bungkusan itu, betik akan mencari alamat destinasi dalam jadual penghalaannya:

# netstat -rn Jadual penghalaan IP Kernel Destination Gateway Genmask Flags MSS Window irtt Iface 128.17.75.0 128.17.75.98 255.255.255.0 UN 1500 0 0 eth0 128.17.112.0 .5.2. 1500 0 0 eth1 lalai 128.17.112.40 0.0. 0.0 UGN 1500 0 0 eth1 127.0.0.1 127.0.0.1 255.0.0.0 UH 3584 0 0 lo 128.17.75.98 127.0.0.1 255.5.0.1 255.5.0.0 2.3 127.0.0.1 255.255.255.0 UH 3584 0 0 lo

Daripada contoh itu jelas bahawa betik disambungkan kepada dua rangkaian 128.17.75, melalui peranti eth0 dan 128.17.112 melalui peranti eth1. Laluan lalai, melalui hos Nenas, yang seterusnya merupakan pintu masuk ke rangkaian luaran.

Sehubungan itu, setelah menerima pakej untuk buah pir, penghala betik akan melihat bahawa alamat destinasi adalah milik rangkaian 128.17.112 dan akan memajukan paket mengikut entri kedua dalam jadual penghalaan.

Oleh itu, paket dihantar dari penghala ke penghala sehingga ia mencapai alamat destinasi.

Perlu diingat bahawa dalam contoh ini laluan

128.17.75.98 127.0.0.1 255.255.255.0 UH 3584 0 0 lo 128.17.112.3 127.0.0.1 255.255.255.0 UH 3584 0 0 lo

Tidak standard. Dan anda tidak akan melihat ini dalam Linux moden.

Ringkasan

Dalam artikel ini, saya cuba menerangkan secara ringkas dan sejelas mungkin konsep asas interaksi infrastruktur rangkaian menggunakan contoh beberapa rangkaian yang saling berkaitan; di bahagian seterusnya saya akan menerangkan operasi rangkaian dalam sistem pengendalian Linux. Saya akan gembira melihat komen dan penambahan anda.

Tindanan protokol TCP/IP ialah alfa dan omega Internet, dan anda bukan sahaja perlu tahu, tetapi juga memahami model dan prinsip operasi tindanan.

Kami mengetahui klasifikasi, piawaian rangkaian dan model OSI. Sekarang mari kita bercakap tentang timbunan berdasarkan sistem rangkaian komputer yang saling berkaitan di seluruh dunia, Internet, dibina.

Model TCP/IP

Pada mulanya, timbunan ini dicipta untuk menyambungkan komputer besar di universiti melalui talian telefon point-to-point. Tetapi apabila teknologi baru muncul, penyiaran (Ethernet) dan satelit, ia menjadi perlu untuk menyesuaikan TCP/IP, yang ternyata menjadi tugas yang sukar. Itulah sebabnya, bersama-sama dengan OSI, model TCP/IP muncul.

Model ini menerangkan bagaimana perlunya membina rangkaian berdasarkan pelbagai teknologi agar susunan protokol TCP/IP berfungsi di dalamnya.

Jadual menunjukkan perbandingan model OSI dan TCP/IP. Yang terakhir termasuk 4 peringkat:

  1. Yang paling rendah, tahap antara muka rangkaian, menyediakan interaksi dengan teknologi rangkaian (Ethernet, Wi-Fi, dsb.). Ini adalah gabungan fungsi pautan data OSI dan lapisan fizikal.
  2. Tahap Internet berdiri lebih tinggi dan mempunyai tugas yang serupa dengan lapisan rangkaian model OSI. Ia menyediakan carian untuk laluan optimum, termasuk mengenal pasti masalah rangkaian. Pada tahap inilah penghala beroperasi.
  3. Pengangkutan bertanggungjawab untuk komunikasi antara proses pada komputer yang berbeza, serta untuk penghantaran maklumat yang dihantar tanpa pertindihan, kehilangan atau ralat, dalam urutan yang diperlukan.
  4. Digunakan menggabungkan 3 lapisan model OSI: sesi, pembentangan dan aplikasi. Iaitu, ia melaksanakan fungsi seperti sokongan sesi, protokol dan penukaran maklumat, dan interaksi rangkaian pengguna.

Kadang-kadang pakar cuba menggabungkan kedua-dua model menjadi sesuatu yang biasa. Sebagai contoh, di bawah ialah perwakilan lima peringkat simbiosis daripada pengarang Rangkaian Komputer E. Tanenbaum dan D. Weatherall:

Model OSI mempunyai pembangunan teori yang baik, tetapi protokol tidak digunakan. Model TCP/IP adalah berbeza: protokol digunakan secara meluas, tetapi model ini hanya sesuai untuk menerangkan rangkaian berasaskan TCP/IP.

Jangan mengelirukan mereka:

  • TCP/IP ialah susunan protokol yang menjadi asas kepada Internet.
  • Model rujukan OSI (Saling Sambungan Sistem Terbuka) sesuai untuk menerangkan pelbagai jenis rangkaian.

Timbunan protokol TCP/IP

Mari lihat setiap peringkat dengan lebih terperinci.

Tahap bawah antara muka rangkaian termasuk Ethernet, Wi-Fi dan DSL (modem). Teknologi rangkaian ini bukan sebahagian daripada timbunan secara rasmi, tetapi amat penting dalam pengendalian Internet secara keseluruhan.

Protokol lapisan rangkaian utama ialah IP (Internet Protocol). Ia adalah protokol yang dihalakan, sebahagian daripadanya ialah pengalamatan rangkaian (alamat IP). Protokol tambahan seperti ICMP, ARRP dan DHCP juga berfungsi di sini. Mereka mengekalkan rangkaian berjalan.

Di peringkat pengangkutan terdapat TCP, protokol yang menyediakan pemindahan data dengan jaminan penghantaran, dan UDP, protokol untuk pemindahan data pantas, tetapi tanpa jaminan.

Lapisan aplikasi ialah HTTP (untuk web), SMTP (pemindahan mel), DNS (menyerahkan nama domain mesra kepada alamat IP), FTP (pemindahan fail). Terdapat lebih banyak protokol pada tahap aplikasi tindanan TCP/IP, tetapi yang disenaraikan boleh dipanggil yang paling penting untuk dipertimbangkan.

Ingat bahawa susunan protokol TCP/IP mentakrifkan piawaian untuk komunikasi antara peranti dan mengandungi konvensyen kerja internet dan penghalaan.