17.06.2023
Rumah / Bekerja di Internet / Tumpukan protokol dasar Internet adalah. Tumpukan protokol dasar Internet. Stack (saklar jaringan). Menyiapkan perangkat jaringan. Struktur data yang dibutuhkan

Tumpukan protokol dasar Internet adalah. Tumpukan protokol dasar Internet. Stack (saklar jaringan). Menyiapkan perangkat jaringan. Struktur data yang dibutuhkan

Tumpukan protokol jaringan dan peretasan TCP

Alexander Antipov

Tumpukan protokol jaringan yang membentuk perpipaan dan komunikasi antar host dirancang untuk interoperabilitas terbaik antara lapisan jaringan yang berbeda. Pada artikel ini, kami akan mencoba menjelaskan pergerakan data melalui lapisan yang terletak di tumpukan dan mencoba menerapkan modul kernel Linux yang membantu kami menangkap dan menampilkan data yang melewati lapisan TCP. Di bawah ini adalah program yang menunjukkan cara menginstal elemen baru V berkas sistem prok. Dan yang terpenting, program ini merusak protokol TCP, melacak semua data yang melewati lapisan tcp, dan menampilkannya di /proc/TCPdata.


Shamitkh, diterjemahkan oleh Alexey Antipov

Tumpukan protokol jaringan yang membentuk perpipaan dan komunikasi antar host dirancang untuk interoperabilitas terbaik antara lapisan jaringan yang berbeda. Pada artikel ini, kami akan mencoba menjelaskan pergerakan data melalui lapisan yang terletak di tumpukan dan mencoba menerapkan modul kernel Linux yang membantu kami menangkap dan menampilkan data yang melewati lapisan TCP. Karena diskusi tentang semua jenis koneksi jaringan berada di luar cakupan artikel ini, kami akan fokus pada koneksi TCP / IP.

Tumpukan protokol jaringan

Perangkat jaringan membentuk lapisan dasar tumpukan protokol. Untuk berkomunikasi dengan perangkat lain dan menerima dan mengirimkan lalu lintas, mereka menggunakan protokol tautan data (biasanya Ethernet). Antarmuka yang disediakan oleh driver perangkat jaringan menyalin paket dari media fisik, melakukan beberapa pemeriksaan kesalahan, dan kemudian menempatkan paket ke dalam lapisan jaringan. Antarmuka keluaran menerima paket dari lapisan jaringan, melakukan beberapa pemeriksaan kesalahan, dan meneruskannya ke media fisik. Kami akan membahas IP (Internet Protocol) yang merupakan protokol lapisan jaringan standar. Fungsi utama IP adalah perutean, memeriksa paket yang masuk untuk menentukan apakah paket ini diarahkan ke host tertentu atau apakah perlu diteruskan lebih lanjut. Dalam hal ini, jika perlu, paket didefragmentasi dan dikirimkan ke protokol transport. Protokol seperti itu basis dinamis merutekan data untuk paket keluar, mengalamatkan dan membaginya sebelum mengirimkannya ke lapisan tautan.

TCP dan UDP adalah protokol lapisan transport yang paling umum digunakan. UDP menyediakan kerangka kerja untuk menangani paket di dalam host, sementara TCP mendukung operasi koneksi yang lebih kompleks seperti pemulihan paket yang hilang dan kontrol lalu lintas.

Bergerak melalui lapisan transport, kita dapat menemukan lapisan INET, yang membentuk lapisan perantara antara lapisan transport dan soket aplikasi. Soket milik aplikasi didukung menggunakan lapisan INET. Semua operasi soket tertentu diimplementasikan di lapisan ini.

BSD adalah struktur data abstrak yang berisi soket INET. Permintaan aplikasi untuk menghubungkan, membaca, atau menulis ke soket diterjemahkan ke dalam operasi INET oleh BSD.

Struktur paket umum. Datanya masuk struktur keseluruhan data, disebut sk_buff. Semua tingkatan menggunakan struktur data ini. Setelah data disalin dari ruang pengguna ke ruang kernel, data ditempatkan di sk_buff dan dipindahkan ke level yang berbeda. Pada gilirannya, level menambahkan tajuk mereka ke struktur ini. Sk_buff berisi tautan ke semua informasi tentang paket, soketnya, perangkat, rute, lokasi data, dll.

Fitur Jaringan Linux

Untuk pemrogram jaringan normal, bagian front-end dari layanan jaringan tersedia menggunakan rutinitas pustaka C berikut.

socket(), bind(), listen(), connect(), accept(), send(), sendto(), recv(), recvfrom(), getockopt(), dan setockopt().

Fungsi socket() digunakan untuk membuat soket baru. Semua operasi dengan berbagai protokol terjadi menggunakan soket. Karena fungsi socket() mengembalikan nilai deskriptor file, itu dapat diakses oleh operasi file standar seperti read(), write().

Fungsi bind() digunakan untuk mengikat soket yang dibuat ke port. Port bersama dengan alamat IP antarmuka jaringan, digunakan untuk mengidentifikasi soket secara unik.

Fungsi listen() digunakan untuk memprogram server. Setelah membuat soket dan mengikatnya ke port, fungsi listen() menyetel soket ke status mendengarkan. Ini berarti soket sedang menunggu koneksi dari host lain.

Saat fungsi accept() dipanggil di server, soket terus disurvei hingga permintaan koneksi diterima dari host lain. Setelah koneksi dibuat, program server bangun dan memungkinkan proses memproses permintaan dari host asing. Sisi klien menggunakan fungsi connect() untuk menunjukkan ke server bahwa klien ingin membuka koneksi soket dan mengirim permintaan.

Struktur data yang dibutuhkan

Struktur ini menjadi dasar implementasi interface socket BSD. Struktur ini diatur dan diinisialisasi menggunakan panggilan sistem socket().

sk_buff:

Struktur ini mengelola paket koneksi individual yang dikirim ke dan dari host. Ini menyebabkan buffering I/O.

Struktur ini mengelola berbagai bagian soket yang spesifik untuk jaringan. Diperlukan untuk soket TCP, UDP dan RAW.

Struktur ini berisi sejumlah operasi yang sama untuk semua protokol.

sockaddr(sockaddr_in):

Struktur ini diperlukan untuk mendukung berbagai format alamat.

Modul kernel Linux

Inti kernel linux terdiri dari modul. Beberapa bagian kernel disimpan secara permanen di memori (seperti penjadwal), dan beberapa dimuat saat dibutuhkan. Misalnya, sistem file VFAT untuk membaca disk dimuat hanya jika diperlukan. Fitur kernel linux ini memungkinkan ruang kernel mengambil sedikit ruang.

Oleh karena itu, penting untuk merancang protokol, driver, dan segala jenis perangkat lunak kernel Anda sebagai modul kernel dan memasukkannya ke dalam kernel dari ruang pengguna. Setelah dimasukkan, modul menjadi tidak dapat dipindahkan hingga dihapus dari ruang kernel. Anda hanya perlu menjadi pengguna root untuk memasukkan atau menghapus modul. Ini adalah notasi umum untuk modul kernel.

#define MODULE #include /* ... file header lain yang diperlukan ... */ /* * ... deklarasi dan fungsi modul ... */ int init_module() ( /* kode yang akan dipanggil kernel saat menginstal modul */ ) void cleanup_module() ( /* kode yang akan dipanggil kernel saat menghapus modul */)

Sebuah proyek modul hacker untuk protokol TCP.

Modul kernel kami sangat sederhana, ditempatkan secara virtual di antara antarmuka operasi soket untuk meneruskan paket TCP dan lapisan TCP. Sekarang semua paket data yang melewati soket yang terdaftar dengan protokol TCP akan dicegat oleh modul kernel kita. Data ini akan ditransfer ke /proc/TCPdata.

Struktur data yang digunakan

tcp_prot -> Berisi pointer ke semua operasi TCP yang dilakukan

struct msghdr -> Berisi data yang dikirim oleh aplikasi, serta bidang lain untuk mengidentifikasi alamat soket.

Struktur msg_iov -> terletak di msghdr, berisi pointer ke data

Sebelum kita mulai coding, mari kita pahami arti dari /proc filesystem. Sistem file proc dinamai demikian karena terletak di direktori /proc pada sebagian besar mesin Linux. Sistem adalah alat yang ampuh yang sering digunakan oleh aplikasi. Ini adalah bagian dari mekanisme di mana kernel berkomunikasi dengan ruang pengguna dan sebaliknya. Meskipun dirancang sebagai sistem file dengan struktur direktori dan inode, pada saat yang sama ia sebenarnya merupakan komponen dari fungsi terdaftar yang menyediakan variabel penting dengan informasi.

Ketika sebuah file dibuat di /proc, itu segera didaftarkan dengan serangkaian fungsi yang memberi tahu kernel apa yang harus dilakukan ketika file dibuka atau ditulis. Sebagian besar file hanya dapat dibaca, dan hanya sedikit yang hanya dapat ditulis.

Sekarang kita akan mulai coding

/*tcpdata.c. Di bawah ini adalah program yang menunjukkan cara menginstal elemen baru di sistem file proc. Dan yang terpenting, program ini merusak protokol TCP, melacak semua data yang melewati lapisan tcp, dan menampilkannya di /proc/TCPdata. */ #define MODULE #define __KERNEL__ /*kita sedang melakukan pekerjaan kernel*/ #include #include #include /*for registering proc entry*/ #include #include #include #include #include #include #include static struct proc_dir_entry *test_entry ; struct msghdr *msg_moniter; struct iovec *iovec_moniter; static char *tcp="Tcp monitered data"; int (*kirim asli)(struct sock *, struct msghdr *,int); /* show_tcp_stats Fungsi ini akan dipanggil oleh /proc FS ketika ada yang mencoba membaca /proc/TCPstat Anda dapat melihat 200 byte terakhir keluar dari soket melalui koneksi tcp */ static int show_tcp_stats(char *buf,char **mulai ,off_t offset,int len,int tidak terpakai) ( len += sprintf(buf+len,"%s\n",tcp); return len; ) /* Ini adalah fungsi penangan yang menangkap permintaan tcp sendmsg */ int moniter_tcp (struct sock *sk, struct msghdr *msg,int len) ( int size; char *temp; printk("Saya membahayakan data tcp Anda \n"); msg_moniter=(struct msghdr *)kmalloc(sizeof(struct msghdr ), GFP_KERNEL); memcpy(msg_moniter,msg,sizeof(struct msghdr)); originalSend(sk,msg,len); iovec_moniter=msg_moniter->msg_iov; size=sizeof(tcp); printk("ukuran dari TCPdat adalah %d \n ",size); (sizeiov_base):strcpy(tcp,"Tcp monitered data"); kfree(msg_moniter); return len; ) /* init_module Fungsi ini memasang modul; itu hanya mendaftarkan direktori baru di /proc dan membuat pointer. */ int init_module() ( test_entry=create_proc_entry("TCPdata",S_IRUGO,NULL); test_entry->read_proc=show_tcp_stats; orginalSend=tcp_prot.sendmsg; /* printk("alamat kirim saya adalah %x \n" ,tcp_prot.sendmsg); printk("alamat hack mes adalah %x \n",orginalSend); */ tcp_prot.sendmsg=moniter_tcp; /* printk("alamat kirim kirim mes setelah hacking %x \n" ,tcp_prot.sendmsg); printk("alamat kirim setelah meretas %x \n",moniter_tcp); */ return 0; ) /* init_module */ /* cleanup_module Fungsi ini menghapus modul; Ini menghapus pendaftaran entri direktori dari /proc FS */ void cleanup_module() ( /* mengembalikan pointer ke pengirim pesan asli tcp */ tcp_prot.sendmsg=orginalSend; /* membatalkan pendaftaran fungsi dari proc FS */ remove_proc_entry ( "TCPdata",NULL); ) /* cleanup_module */ MODULE_AUTHOR("shyamjithe.c.s "); /*macros*/ MODULE_DESCRIPTION("monitor tcp data"); MODULE_LICENSE("GPL");

Program ini telah diuji pada kernel 2.4, sehingga Anda dapat mengkompilasinya menggunakan:

Gcc -O6 -Wall -c tcpdata.c -I /usr/src/linux-2.4.20-8/include/ ini akan menghasilkan tcpdata.o sekarang insmod tcpdata.o buka beberapa aplikasi tcp cat /proc/TCPdata untuk menghapus module use rmmod tcpdata Sekarang, untuk memahami kode ini, saya akan memberikan beberapa penjelasan. Seluruh program hanyalah cara rumit untuk menggunakan pointer fungsi. Tetapi Anda perlu berhati-hati saat menggunakan penangan Anda sendiri, karena salah tempat pointer fungsi dapat menyebabkan sistem hang. Seperti yang dinyatakan, ini adalah cara minimal untuk memecahkan TCP. Anda bisa membentuk tingkat baru di atas lapisan TCP seperti ini, yang akan mengganggu semua jenis pekerjaan yang dilakukan oleh TCP. Hal yang sama dapat dilakukan dengan UDP.

Kesimpulan

Pengambilan paling penting dari program di atas adalah bahwa tidak selalu diperlukan untuk mengubah kode sumber kernel ketika kita melakukan modifikasi yang berhubungan dengan protokol. Ini adalah implementasi berorientasi objek dari kernel Linux yang memungkinkan kita untuk memanipulasi objek data di dalam kernel.

Tumpukan protokol

Tumpukan protokol bersifat hierarkis perekrutan terorganisir protokol jaringan tingkat yang berbeda, cukup untuk mengatur dan memastikan interaksi node dalam jaringan. Saat ini, jaringan menggunakan tumpukan protokol komunikasi dalam jumlah besar. Tumpukan yang paling populer adalah: TCP/IP, IPX/SPX, NetBIOS/SMB, Novell NetWare, DECnet, XNS, SNA dan OSI. Semua tumpukan ini, kecuali SNA, di tingkat yang lebih rendah - fisik dan saluran - menggunakan protokol standar yang sama Ethemet, Token Ring, FDDI, dan beberapa lainnya, yang memungkinkan penggunaan peralatan yang sama di semua jaringan. Tetapi di tingkat atas, semua tumpukan bekerja sesuai dengan protokolnya masing-masing. Protokol ini seringkali tidak sesuai dengan layering yang direkomendasikan oleh model OSI. Secara khusus, fungsi lapisan sesi dan presentasi biasanya digabungkan dengan lapisan aplikasi. Perbedaan ini disebabkan oleh fakta bahwa model OSI muncul sebagai hasil dari generalisasi tumpukan yang sudah ada dan benar-benar digunakan, dan bukan sebaliknya.

Semua protokol yang termasuk dalam tumpukan dikembangkan oleh satu pabrikan, yaitu, mereka dapat bekerja secepat dan seefisien mungkin.

Poin penting dalam fungsi peralatan jaringan, khususnya adaptor jaringan, adalah pengikatan protokol. Ini memungkinkan Anda untuk menggunakan tumpukan protokol yang berbeda saat melayani satu adaptor jaringan. Misalnya, Anda dapat menggunakan tumpukan TCP/IP dan IPX/SPX secara bersamaan. Jika tiba-tiba terjadi kesalahan saat mencoba membuat koneksi dengan penerima menggunakan tumpukan pertama, itu akan secara otomatis beralih menggunakan protokol dari tumpukan berikutnya. Poin penting dalam hal ini adalah urutan pengikatan, karena jelas memengaruhi penggunaan satu atau beberapa protokol dari tumpukan yang berbeda.

Terlepas dari berapa banyak adaptor jaringan diinstal pada komputer, pengikatan dapat dilakukan baik "satu-ke-banyak" dan "beberapa-ke-satu", yaitu, satu tumpukan protokol dapat diikat ke beberapa adaptor sekaligus, atau beberapa tumpukan ke satu adaptor.

NetWare adalah sistem operasi jaringan dan seperangkat protokol jaringan yang digunakan dalam sistem ini untuk berinteraksi dengan komputer klien yang terhubung ke jaringan. Protokol jaringan sistem didasarkan pada tumpukan protokol XNS. NetWare saat ini mendukung protokol TCP/IP dan IPX/SPX. Novell NetWare populer di tahun 80-an dan 90-an karena lebih efisien daripada sistem operasi. tujuan umum. Ini sekarang adalah teknologi yang sudah ketinggalan zaman.

Tumpukan protokol Xerox Network Services Internet Transport Protocol (XNS) dikembangkan oleh Xerox untuk transmisi data melalui jaringan Ethernet. Berisi 5 level.

Lapisan 1 - media transmisi - mengimplementasikan fungsi lapisan fisik dan tautan dalam model OSI:

* mengelola pertukaran data antara perangkat dan jaringan;

* merutekan data antar perangkat di jaringan yang sama.

Lapisan 2 - internetwork - sesuai dengan lapisan jaringan dalam model OSI:

* mengelola pertukaran data antar perangkat yang berlokasi di jaringan yang berbeda (menyediakan layanan datagram dalam hal model IEEE);

* menjelaskan cara data melewati jaringan.

Lapisan 3 - transportasi - sesuai dengan lapisan transportasi dalam model OSI:

* Menyediakan komunikasi end-to-end antara sumber data dan tujuan.

Level 4 - kontrol - sesuai dengan sesi dan level presentasi dalam model OSI:

* mengelola penyajian data;

* mengelola kendali atas sumber daya perangkat.

Lapisan 5 - diterapkan - sesuai dengan level tertinggi dalam model OSI:

* menyediakan fungsi pemrosesan data untuk tugas yang diterapkan.

Tumpukan protokol TCP / IP (Transmission Control Protocol / Internet Protocol) sejauh ini adalah yang paling umum dan fungsional. Ia bekerja di jaringan lokal dalam skala apa pun. Tumpukan ini adalah tumpukan utama jaringan global Internet. Dukungan stack diimplementasikan di komputer dengan sistem operasi UNIX. Akibatnya, popularitas protokol TCP/IP meningkat. Tumpukan protokol TCP / IP mencakup banyak protokol yang beroperasi di berbagai tingkatan, tetapi mendapatkan namanya berkat dua protokol - TCP dan IP.

TCP (Transmission Control Protocol) adalah protokol transport yang dirancang untuk mengontrol transmisi data dalam jaringan menggunakan stack protokol TCP/IP. IP (Internet Protocol) adalah protokol lapisan jaringan yang dirancang untuk mengirimkan data melalui jaringan komposit menggunakan salah satu protokol transport, seperti TCP atau UDP.

Tingkat yang lebih rendah dari tumpukan TCP / IP menggunakan protokol transfer data standar, yang memungkinkan untuk menggunakannya di jaringan menggunakan teknologi jaringan apa pun dan di komputer dengan sistem operasi apa pun.

Awalnya, protokol TCP / IP dikembangkan untuk digunakan dalam jaringan global, oleh karena itu dibuat sefleksibel mungkin. Secara khusus, karena kemampuan fragmentasi paket, data, terlepas dari kualitas saluran komunikasi, bagaimanapun juga, mencapai tujuan. Selain itu, karena adanya protokol IP, dimungkinkan untuk mentransfer data antar segmen jaringan yang heterogen.

Kerugian dari protokol TCP/IP adalah kompleksitas administrasi jaringan. Jadi, untuk fungsi normal jaringan, diperlukan server tambahan, seperti DNS, DHCP, dll., Pemeliharaan yang menghabiskan sebagian besar waktu administrator sistem. Limoncelli T., Hogan K., Cheylap S. - Administrasi sistem dan jaringan. edisi ke-2. tahun 2009. 944s

Tumpukan protokol IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange) dikembangkan dan dimiliki oleh Novell. Ini telah dirancang untuk kebutuhan sistem operasi Novell NetWare, yang hingga saat ini memegang salah satu posisi terdepan di antara sistem operasi server.

Protokol IPX dan SPX masing-masing bekerja pada lapisan jaringan dan transportasi model ISO / OSI, sehingga keduanya saling melengkapi dengan sempurna.

Protokol IPX dapat mengirimkan data menggunakan datagram menggunakan informasi perutean jaringan untuk melakukannya. Namun, untuk mentransfer data di sepanjang rute yang ditemukan, Anda harus terlebih dahulu membuat koneksi antara pengirim dan penerima. Inilah yang dilakukan oleh protokol SPX atau protokol transport lainnya yang bekerja bersama-sama dengan IPX.

Sayangnya, tumpukan protokol IPX/SPX pada awalnya berorientasi untuk melayani jaringan kecil, sehingga penggunaannya di jaringan besar tidak efektif: penggunaan penyiaran yang berlebihan pada jalur komunikasi berkecepatan rendah tidak dapat diterima.

pada fisik dan lapisan tautan Tumpukan OSI mendukung protokol Ethernet, Token Ring, FDDI, serta LLC, X.25 dan ISDN, yaitu menggunakan semua protokol tingkat rendah populer yang dikembangkan di luar tumpukan, seperti kebanyakan tumpukan lainnya. Lapisan jaringan mencakup Connectionoriented Network Protocol (CONP) dan Connectionless Network Protocol (CLNP) yang relatif jarang digunakan. Protokol perutean tumpukan OSI adalah ES-IS (Sistem Akhir - Sistem Menengah) antara sistem akhir dan perantara dan IS-IS (Sistem Menengah - Sistem Menengah) antara sistem perantara. Lapisan transport tumpukan OSI menyembunyikan perbedaan antara layanan jaringan tanpa sambungan dan tanpa sambungan sehingga pengguna menerima kualitas layanan yang diperlukan terlepas dari lapisan jaringan yang mendasarinya. Untuk memastikan hal ini, lapisan transport mengharuskan pengguna menentukan kualitas layanan yang diinginkan. Layanan lapisan aplikasi menyediakan transfer file, emulasi terminal, layanan direktori, dan surat. Dari jumlah tersebut, yang paling populer adalah layanan direktori (standar X.500), Surel(X.400), Protokol Terminal Virtual (VTP), Transfer File, Akses, dan Protokol Kontrol (FTAM), Protokol Transfer dan Kontrol Pekerjaan (JTM).

Tumpukan protokol yang cukup populer yang dikembangkan oleh IBM dan Microsoft, masing-masing, berfokus pada penggunaan dalam produk perusahaan ini. Seperti TCP / IP, protokol standar seperti Ethernet, Token Ring, dan lainnya bekerja pada lapisan tautan fisik dan data tumpukan NetBIOS / SMB, yang memungkinkan untuk menggunakannya bersama-sama dengan perangkat aktif apa pun. peralatan jaringan. Di tingkat atas, protokol NetBIOS (Network Basic Input / Output System) dan SMB (Server Message Block) berfungsi.

Protokol NetBIOS dikembangkan pada pertengahan 80-an abad lalu, tetapi segera digantikan oleh protokol NetBEUI (NetBIOS Extended User Interface) yang lebih fungsional, yang memungkinkan pengorganisasian pertukaran informasi yang sangat efisien dalam jaringan yang terdiri dari tidak lebih dari 200 komputer .

Komunikasi antar komputer menggunakan nama logis yang ditetapkan secara dinamis ke komputer saat terhubung ke jaringan. Dalam hal ini, tabel nama didistribusikan ke setiap komputer di jaringan. Bekerja dengan nama grup juga didukung, yang memungkinkan Anda mentransfer data ke beberapa penerima sekaligus.

Keuntungan utama dari protokol NetBEUI adalah kecepatan dan kebutuhan sumber daya yang sangat rendah. Jika Anda ingin mengatur pertukaran data cepat dalam jaringan kecil yang terdiri dari satu segmen, tidak ada protokol yang lebih baik untuk ini. Selain itu, untuk pengiriman pesan koneksi mapan bukan persyaratan wajib: dengan tidak adanya koneksi, protokol menggunakan metode datagram, ketika pesan diberikan dengan alamat penerima dan pengirim dan "lepas landas", berpindah dari satu komputer ke komputer lain.

Namun, NetBEUI juga memiliki kekurangan yang signifikan: sama sekali tidak memiliki konsep perutean paket, sehingga penggunaannya dalam jaringan komposit yang kompleks tidak masuk akal. Pyatibratov A.P., Gudyno L.P., Kirichenko A.A. Mesin komputasi, jaringan dan sistem telekomunikasi Moskow 2009. 292s

Sedangkan untuk protokol SMB (Server Message Block), ia mengatur operasi jaringan pada tiga level tertinggi - level sesi, presentasi, dan aplikasi. Saat menggunakannya, dimungkinkan untuk mengakses file, printer, dan sumber daya jaringan lainnya. Protokol ini telah diperbaiki beberapa kali (tiga versi telah dirilis), yang memungkinkan untuk menggunakannya bahkan dalam sistem operasi modern seperti Microsoft Vista dan Windows 7. Protokol SMB bersifat universal dan dapat dipasangkan dengan hampir semua protokol transport, seperti TCP/IP dan SPX.

Tumpukan protokol DECnet (Digital Equipment Corporation net) berisi 7 lapisan. Terlepas dari perbedaan terminologi, lapisan DECnet sangat mirip dengan lapisan model OSI. DECnet mengimplementasikan konsep arsitektur jaringan DNA (Digital Network Architecture) yang dikembangkan oleh DEC, yang menurutnya sistem komputasi heterogen (komputer dari kelas yang berbeda) yang beroperasi di bawah berbagai sistem operasi dapat digabungkan menjadi informasi yang didistribusikan secara geografis dan jaringan komputasi.

Protokol SNA (System Network Architecture) dari IBM dirancang untuk komunikasi jarak jauh dengan komputer besar dan berisi 7 lapisan. SNA didasarkan pada konsep mesin host dan menyediakan akses terminal jarak jauh ke mainframe IBM. Dasar tanda SNA adalah kemampuan setiap terminal untuk mengakses program aplikasi host apa pun. Arsitektur jaringan sistem diimplementasikan berdasarkan metode akses telekomunikasi virtual (Virtual Telecommunication Access Method - VTAM) di komputer utama. VTAM mengelola semua tautan dan terminal, dengan setiap terminal memiliki akses ke semua aplikasi.

Dengan bantuan lapisan sesi (Lapisan Sesi) Dialog antar pihak diselenggarakan, ditetapkan pihak mana yang menjadi pemrakarsa, pihak mana yang aktif dan bagaimana dialog berakhir.

Lapisan Presentasi berkaitan dengan bentuk penyediaan informasi ke tingkat yang lebih rendah, misalnya pengkodean ulang atau penyandian informasi.

Lapisan Aplikasi ini adalah sekumpulan protokol yang dipertukarkan antara node jarak jauh yang mengimplementasikan tugas (program) yang sama.

Perlu dicatat bahwa beberapa jaringan muncul jauh lebih awal daripada model OSI dikembangkan, oleh karena itu, untuk banyak sistem, korespondensi tingkat model OSI sangat sewenang-wenang.

1.3. tumpukan protokol internet

Internet dirancang untuk mengangkut segala jenis informasi dari sumber ke penerima. Berbagai elemen jaringan terlibat dalam transportasi informasi (Gbr. 1.1) - perangkat terminal, perangkat switching, dan server. Sekelompok node dengan bantuan perangkat switching digabungkan menjadi jaringan lokal, jaringan lokal saling terhubung oleh gateway (router). Perangkat switching menggunakan berbagai teknologi: Ethernet, Token Ring, FDDI, dan lainnya.

Setiap perangkat terminal (host) dapat secara bersamaan melayani beberapa proses pemrosesan informasi (ucapan, data, teks ...), yang ada dalam bentuk aplikasi jaringan (program khusus) yang terletak di level tertinggi; dari aplikasi, informasi memasuki sarana pemrosesan informasi di tingkat yang lebih rendah.

Pengangkutan aplikasi di setiap node ditentukan secara berurutan oleh lapisan yang berbeda. Setiap lapisan menggunakan protokolnya sendiri untuk menyelesaikan bagian masalahnya dan menyediakan transmisi informasi dupleks. Urutan tugas yang lewat membentuk tumpukan protokol. Dalam proses pengangkutan informasi, setiap node menggunakan tumpukan protokol yang dibutuhkannya. Pada ara. 1.3 menunjukkan tumpukan lengkap dari protokol yang mendasarinya koneksi jaringan di internet.

Node, dari sudut pandang jaringan, adalah sumber dan penerima informasi. Empat tingkat yang lebih rendah secara kolektif tidak bergantung pada jenis informasi yang dikirimkan. Setiap aplikasi jaringan yang berkomunikasi dengan lapisan keempat diidentifikasi olehnya nomor unik pelabuhan . Nilai port berkisar dari 0 hingga 65535. Dalam kisaran ini, nomor port 0-1023 dialokasikan untuk port terkenal, nomor port 1024-49151 digunakan oleh pengembang perangkat lunak khusus, nomor port 49152-65535 ditetapkan secara dinamis ke aplikasi jaringan pengguna selama sesi. Nilai numerik dari nomor port tumpukan diberikan dalam .

Lapisan transport (keempat) mendukung dua mode komunikasi

– dengan dan tanpa pembentukan koneksi. Setiap mode diidentifikasi dengan nomor protokolnya (Protokol). Dalam standar Internet, penyandian dalam kode heksadesimal diterima. Mode pertama digunakan oleh modul TCP, yang memiliki kode protokol 6 (dalam kode heksadesimal - 0x06) dan digunakan untuk transportasi informasi yang terjamin. Untuk melakukan ini, setiap paket yang dikirimkan dilengkapi dengan nomor urut dan harus diakui.

______________________________________________________________________________

oleh pihak penerima tentang penerimaan yang benar. Mode kedua digunakan oleh modul UDP tanpa jaminan pengiriman informasi ke penerima (jaminan pengiriman disediakan oleh aplikasi). Protokol UDP memiliki kode 17 (dalam kode heksadesimal - 0x11).

Terapan

Perwakilan

sidang

DHCP (Port=67/68)

Mengangkut

protokol=0x0059

protokol=0x0002

protokol=0x0001

Jenis Protokol = 0x0806

Jenis Protokol = 0x0800

disalurkan

disalurkan

disalurkan

Fisik

disalurkan

Kabel, pasangan terpilin Ethernet, serat optik

Fisik Kabel, twisted pair, serat optik

Fisik

Kabel, pasangan bengkok, serat optik

Fisik

Kabel, radio, serat

Beras. 1.3. Stack Protokol Dasar Internet

______________________________________________________________________________

Lapisan jaringan (ketiga) memastikan pergerakan informasi dalam bentuk paket antar jaringan (antarmuka lapisan tautan) menggunakan alamat jaringan. Keluarga protokol lapisan 3 diidentifikasi oleh jenis protokol (ARP - tipe 0x0806 atau IP - tipe 0x0800) oleh lapisan yang mendasarinya. Pasangan nomor port-alamat protokol-jaringan disebut soket. Sepasang soket - mengirim dan menerima - secara unik mengidentifikasi koneksi yang dibuat. Alamat tujuan dari setiap paket yang masuk ke modul IP dari lapisan tautan dianalisis untuk menentukan apakah paket harus diteruskan ke aplikasinya sendiri atau dipindahkan ke antarmuka lain untuk pengangkutan lebih lanjut melalui jaringan.

Lapisan kedua (saluran) memproses paket di jaringan lokal menggunakan berbagai teknologi: Ethernet, Token Ring, FDDI, dan lainnya. Tingkat pertama menyediakan konversi kode biner menjadi kode linier, yang paling cocok untuk media transportasi yang digunakan (kabel logam, jalur serat optik komunikasi, radio).

PERTANYAAN UNTUK BAGIAN 1.3

1. Apa yang menentukan cara lapisan jaringan untuk memproses paket yang datang dari lapisan tautan?

Menjawab. Jenis protokol: 0x0806 untuk ARP dan 0x0800 untuk IP.

2. Apa yang menentukan sarana lapisan transportasi untuk memproses paket yang datang dari lapisan jaringan?

Menjawab. Nomor protokol: 0x0006 untuk TCP dan 0x0011 untuk UDP.

3. Apa yang menentukan jenis aplikasi jaringan untuk memproses datagram?

Menjawab. Nomor pelabuhan.

4. Berikan contoh nomor port untuk aplikasi di seluruh jaringan.

Jawaban: Port 80 adalah HTTP, port 23 adalah TELNET, port 53 adalah DNS.

1.4. protokol akses internet

Untuk mengakses Internet, keluarga protokol digunakan dengan nama umum PPP (Point-to-Point Protocol), yang meliputi:

1. Link Control Protocol (LCP) untuk menegosiasikan parameter pertukaran paket pada lapisan tautan di bagian server akses jaringan host (khususnya, untuk menegosiasikan ukuran paket dan jenis protokol otentikasi).

2. Authentication Protocol untuk menetapkan legitimasi pengguna (khususnya, menggunakan Challenge Handshake Authentication Protocol - CHAP).

3. Protokol Kontrol Jaringan (Protokol Kontrol IP - IPCP) untuk mengonfigurasi parameter komunikasi jaringan (khususnya, menetapkan alamat IP).

Setelah itu, pertukaran informasi melalui protokol IP dimulai.

Masing-masing protokol ini dapat menggunakan media transport apapun, sehingga ada banyak cara untuk mengenkapsulasi PPP pada physical layer. Untuk mengenkapsulasi PPP menjadi tautan titik-ke-titik, prosedurnya mirip dengan

HDLC.

Pertukaran bingkai menggunakan prosedur yang mirip dengan HDLC (Prosedur Kontrol Tautan Data Tingkat Tinggi) melibatkan pertukaran bingkai dupleks. Setiap frame yang ditransmisikan harus diakui, jika tidak ada pengakuan yang diterima dalam waktu habis, pemancar akan mentransmisi ulang. Struktur rangka ditunjukkan pada gambar. 1.4. Urutan transmisi bidang bingkai adalah dari kiri ke kanan. Tujuan dari bidang bingkai adalah sebagai berikut.

Yu.F.Kozhanov, Kolbanev M.O ANTARMUKA DAN PROTOKOL JARINGAN GENERASI BERIKUTNYA

______________________________________________________________________________

Beras. 1.4. Struktur bidang bingkai HDLC

Setiap frame yang ditransmisikan harus dimulai dan diakhiri dengan kombinasi "Bendera" (Bendera), yang memiliki struktur bit dalam bentuk 01111110 (0x7e). Kombinasi "Bendera" yang sama dapat digunakan sebagai penutup untuk satu bingkai dan pembuka untuk bingkai berikutnya. Kombinasi bendera harus dideteksi oleh sisi penerima untuk menentukan batas bingkai. Untuk memastikan transfer informasi yang tidak bergantung pada kode, semua kombinasi yang cocok dengan karakter layanan harus dikecualikan dari bidang bingkai berikutnya (misalnya, kombinasi "Bendera").

DI DALAM Dalam mode asinkron, semua bidang bingkai dibentuk byte demi byte, setiap byte didahului dengan bit "mulai" dan diakhiri dengan bit "berhenti".

DI DALAM mode sinkron juga digunakan penyisipan byte atau penyisipan bit. Dalam kasus pertama, urutan byte 0x7e ("Bendera") diganti di bidang bingkai dengan 2-byte 0x7d dan 0x5e, 0x7d dengan 0x7d dan 0x5d, 0x03 dengan 0x7d dan 0x23. Dalam kasus kedua, setelah pembentukan semua bidang bingkai, konten setiap bingkai dipindai sedikit demi sedikit antara kombinasi "Bendera" dan bit "nol" dimasukkan setelah setiap lima bit "satu" yang berdekatan. Saat mendekode bingkai pada penerimaan, pemindaian bit demi bit dari konten bingkai dilakukan antara kombinasi "Bendera" dan penghapusan bit "nol" setelah setiap lima bit "satu" yang berdekatan.

Bidang alamat (Alamat) memiliki nilai konstanta 11111111 (0xff), dan bidang kontrol (Kontrol) memiliki nilai 00000011 (0x03).

Bidang protokol mengambil nilai 0xc021 untuk protokol LCP, 0xc223 untuk protokol CHAP, 0x8021 untuk IPCP, dan 0x0021 untuk protokol IP.

Mengisi bidang informasi tergantung pada jenis protokol, tetapi panjangnya tidak boleh kurang dari 4 byte.

Urutan pemeriksaan (Frame Check Sequence, FCS) pada transmisi dibentuk sehingga a) ketika mengalikan informasi antara bendera dengan X16 dan b) kemudian membagi modulo 2 dengan menghasilkan polinomial X16 + X12 + X5 + 1, hasilnya akan sama dengan angka konstan 0xf0b8.

Tata cara akses pelanggan PSTN ke Internet terdiri dari beberapa tahapan. Langkah pertama menggunakan protokol LCP (Protocol = 0xc021), yang mana

menggunakan format berikut (Gambar 1.5).

Beras. 1.5. format bingkai LCP

Bidang protokol mengambil nilai 0xc021. Setiap pesan ditandai dengan kodenya (Kode), nomor seri (ID), panjang (Panjang). Panjang pesan mencakup semua bidang mulai dari Kode hingga FCS. Satu pesan dapat berisi beberapa parameter yang masing-masing ditandai dengan tipe parameter (Type),

panjang (Panjang) dan data (Tanggal).

(Configure-Nak), 04 - penolakan konfigurasi (Configure-Reject), 05 - permintaan penghentian (Hentikan-Permintaan), 06 - konfirmasi penghentian (Hentikan-Ack).

Diagram lengkap interaksi antara perangkat terminal (Host), server akses jaringan (NAS) dan server untuk otentikasi, otorisasi, dan akuntansi (AAA) saat mengatur akses pelanggan PSTN ke Internet ditunjukkan pada gambar. 1.6.

______________________________________________________________________________

Gambar 1.6 menunjukkan bahwa pada awalnya host meminta koneksi menggunakan protokol LCP (Protocol = 0xc021) dengan parameter MTU=300, PFC=7, tetapi sebagai hasil negosiasi mereka dengan server akses NAS (Code=02), parameter MTU=200 (MTU - ukuran paket maksimum dalam byte), protokol autentikasi - CHAP (Auth.prot=c223). Pertukaran header terkompresi (PFC=7) ditolak oleh server akses NAS (Kode=04).

Ketik = 3, alamat IP = a.b.c.d, Mask,

Protokol=0xc021, kode=04,

Protokol=0xc021, kode=01,

Tipe=1, MTU=300

Protokol=0xc021, kode=03,

Jenis=1, MTU=200

Protokol=0xc021, kode=01,

Jenis=1, MTU=200

Protokol=0xc021, kode=02,

Jenis=1, MTU=200

Protokol=0xc021, kode=01,

Protokol=0xc021, kode=02,

Ketik = 3, Auth.prot=0xc223, Algoritma=5

Protokol=0xc223, kode=01,

Protokol=0xc223, kode=02,

Prot=UDP, kode=01,

Nama=ABC, Nilai=W

Auth=0, Attr=Nama, Chall=V

Prot=UDP, kode=02,

Alamat IP=a.b.c.d , Topeng,

Prot=UDP, kode=05, Data

Protokol = 0x0021, ...

Protokol=0x0021, ...

Protokol=0xc021, kode=05,

1994, DS]. Inti dari prosedur otentikasi adalah bahwa NAS mengirimkan beberapa nomor acak V ke host, dan host mengembalikan nomor lain W yang dihitung dari fungsi yang diketahui sebelumnya menggunakan nama (Nama) dan kata sandi (Kata Sandi), yang dimasukkan oleh pengguna ke komputer dari kartu Internet yang dibeli dari penyedia. Dengan kata lain, W=f(V, Nama, Kata Sandi). Diasumsikan bahwa penyerang (peretas) dapat mencegat nilai V, Nama dan W yang dikirim melalui jaringan, dan dia mengetahui algoritme untuk menghitung fungsi f. Inti dari pembentukan W adalah bahwa elemen awal (bit) dari bilangan acak V "dicampur" dalam berbagai cara dengan elemen kata sandi Kata sandi yang tidak diketahui penyerang. Ciphertext yang dihasilkan kemudian dikompresi, misalnya dengan menambahkan dua byte modulo. Transformasi seperti itu disebut fungsi intisari atau fungsi hash, dan hasilnya disebut intisari. Prosedur yang tepat untuk menghasilkan intisari ditentukan oleh algoritma MD5 dan dijelaskan dalam . NAS menanyakan server AAA untuk nilai sebenarnya dari W melalui protokol RADIUS, mengirimkannya nilai Name dan Challenge=V. Berdasarkan nilai V dan Nama yang diterima dari NAS dan kata sandi kata sandi yang dimilikinya di database, server AAA menghitung W menggunakan algoritme yang sama dan mengirimkannya ke NAS. NAS membandingkan dua nilai W yang diterima dari host dan dari server AAA: jika keduanya cocok, maka pesan autentikasi yang berhasil dikirim ke host - Sukses (Kode=03).

Pada tahap ketiga, parameter jaringan dikonfigurasi menggunakan protokol IPCP (alias PPP IPC, Protocol=0x8021). Tuan rumah meminta alamat IP jaringan dari NAS, dan NAS mengalokasikan alamat IP dari kumpulan (rentang) untuk tuan rumah (alamat IP = a.b.c.d), dan

juga melaporkan alamat IP server DNS (IP-address=e.f.g.h). NAS melalui protokol RADIUS

mengirimkan pemberitahuan (Kode=04) ke server AAA tentang dimulainya penagihan dan menerima konfirmasi (Kode=05).

Pada tahap ke-4, pengguna memulai sesi komunikasi dengan Internet menggunakan protokol IP (Protokol = 0x0021).

Setelah sesi diakhiri (langkah 5), pengguna mengirimkan pesan penghentian koneksi (Kode=05) ke NAS melalui protokol LCP, NAS mengakui pesan ini (Kode=06), mengirimkan pemberitahuan akhir penagihan ke server AAA dan menerima pengakuan darinya. Semua perangkat dikembalikan ke keadaan semula.

PERTANYAAN UNTUK BAGIAN 1.4

1. Sebutkan komposisi dan tujuan keluarga protokol PPP.

Menjawab. LCP - untuk menegosiasikan parameter pertukaran paket, CHAP - untuk menetapkan legitimasi pengguna, IPCP - untuk menetapkan alamat IP.

2. Apakah protokol PPP menyediakan deteksi kesalahan dan pengiriman paket sesuai pesanan?

Menjawab. Deteksi kesalahan - ya, pengiriman sesuai pesanan - tidak, ini disediakan oleh protokol TCP.

3. Di mana data autentikasi pengguna disimpan?

Menjawab. Di kartu Internet dan di server AAA.

4. Apakah mungkin untuk menentukan alamat IP pengguna sebelum membuat koneksi ke server NAS?

Jawaban: Tidak. Setelah otentikasi berhasil, NAS mengeluarkan alamat IP gratis dari kisaran alamat yang ditetapkan.

5. Metode apa yang digunakan untuk menghitung biaya sambungan Internet? Jawab: Biasanya ada biaya langganan atau biaya volume.

Tumpukan protokol, atau dalam bahasa umum TCP / IP, adalah arsitektur jaringan perangkat modern yang dirancang untuk menggunakan jaringan. Tumpukan adalah dinding di mana setiap bata penyusunnya terletak di atas yang lain, tergantung padanya. Memanggil tumpukan protokol "Tumpukan TCP/IP" disebabkan oleh dua protokol utama yang telah diterapkan - IP itu sendiri, dan TCP berdasarkan padanya. Namun, mereka hanya yang utama dan paling umum. Jika tidak ratusan, maka puluhan lainnya digunakan hingga saat ini untuk berbagai keperluan.

Web yang biasa kita gunakan (world wide web) didasarkan pada HTTP (protokol transfer hiperteks), yang pada gilirannya bekerja berdasarkan TCP. Ini adalah contoh klasik penggunaan tumpukan protokol. Ada juga protokol email IMAP/POP dan SMTP, protokol shell jarak jauh SSH, protokol desktop jarak jauh RDP, data MySQL, SSL/TLS, dan ribuan aplikasi lain dengan protokol mereka sendiri (..)

Apa perbedaan antara semua protokol ini? Semuanya sangat sederhana. Selain berbagai tujuan yang ditetapkan selama pengembangan (misalnya, kecepatan, keamanan, stabilitas, dan kriteria lainnya), protokol dibuat untuk tujuan diferensiasi. Misalnya, ada protokol lapisan aplikasi yang berbeda untuk aplikasi yang berbeda: IRC, Skype, ICQ, Telegram, dan Jabber tidak kompatibel satu sama lain. Mereka dirancang untuk melakukan tugas tertentu, dan dalam hal ini, kemampuan untuk memanggil WhatsApp di ICQ sama sekali tidak ditentukan secara teknis, karena aplikasi menggunakan protokol yang berbeda. Tetapi protokol mereka didasarkan pada protokol IP yang sama.

Sebuah protokol dapat disebut urutan tindakan yang terencana dan teratur dalam suatu proses di mana terdapat beberapa aktor, dalam jaringan mereka disebut rekan (mitra), lebih jarang - klien dan server, yang menekankan fitur protokol tertentu. Contoh paling sederhana protokol bagi yang masih belum paham adalah jabat tangan saat rapat. Keduanya tahu bagaimana dan kapan, tetapi pertanyaan mengapa sudah menjadi pertanyaan pengembang, bukan pengguna protokol. Ngomong-ngomong, ada jabat tangan di hampir semua protokol, misalnya, untuk memastikan diferensiasi protokol dan perlindungan terhadap "terbang di pesawat yang salah".

Inilah TCP / IP pada contoh protokol paling populer. Hirarki ketergantungan ditampilkan di sini. Saya harus mengatakan bahwa aplikasi hanya menggunakan protokol yang ditentukan, yang mungkin diimplementasikan atau tidak di dalam OS.

Jika benar-benar, tentu saja bahasa sederhana adalah layanan pos.

Setiap anggota jaringan yang kompatibel dengan IP memiliki alamatnya sendiri, yang terlihat seperti ini: 162.123.058.209. Secara total, ada 4,22 miliar alamat seperti itu untuk protokol IPv4.

Misalkan satu komputer ingin berkomunikasi dengan yang lain dan mengiriminya bingkisan - sebuah "paket". Dia akan beralih ke "layanan pos" TCP / IP dan memberikan paketnya, menunjukkan alamat tujuan pengirimannya. Tidak seperti alamat di dunia nyata, alamat IP yang sama sering diberikan komputer yang berbeda pada gilirannya, yang berarti bahwa "tukang pos" tidak mengetahui di mana dia berada secara fisik komputer yang diinginkan, sehingga mengirimkan parsel ke "kantor pos" terdekat - ke kartu jaringan komputer. Mungkin ada informasi tentang di mana komputer yang diinginkan berada, atau mungkin tidak ada informasi seperti itu. Jika dia tidak ada, untuk semua yang akan datang " kantor Pos" (beralih) permintaan alamat dikirim. Langkah ini diulangi oleh semua "kantor pos" sampai mereka menemukan alamat yang diinginkan, sambil mengingat berapa banyak "kantor pos" yang melewati permintaan ini sebelum mereka dan jika berhasil sejumlah tertentu (cukup besar) , kemudian akan dikembalikan kembali dengan catatan "alamat tidak ditemukan" "Kantor pos" pertama akan segera menerima banyak jawaban dari "kantor" lain dengan opsi cara ke penerima Jika tidak ada satu jalur yang cukup pendek untuk ditemukan (biasanya 64 penerusan, tetapi tidak lebih dari 255 ), paket akan dikembalikan ke pengirim. Jika satu atau lebih jalur ditemukan, paket akan ditransfer melalui jalur terpendek dari mereka, sementara "kantor pos" akan mengingat jalur ini untuk sementara waktu, memungkinkan Anda untuk dengan cepat mentransfer paket berikutnya tanpa menanyakan alamat siapa pun. Setelah pengiriman , "tukang pos" akan membuat penerima menandatangani "tanda terima" yang menyatakan bahwa dia menerima paket dan akan memberikan "tanda terima" ini kepada pengirim sebagai bukti bahwa paket telah dikirim secara utuh - diperlukan pemeriksaan pengiriman dalam TCP. Jika pengirim tidak menerima tanda terima setelah jangka waktu tertentu, atau tanda terima mengatakan bahwa paket rusak atau hilang selama pengiriman, maka dia akan mencoba mengirim paket lagi.

TCP/IP adalah seperangkat protokol.

Protokol adalah aturannya. Misalnya, saat Anda disapa - Anda menyapa sebagai tanggapan (dan tidak mengucapkan selamat tinggal atau tidak menginginkan kebahagiaan). Pemrogram akan mengatakan bahwa kami menggunakan protokol halo, misalnya.

Jenis TCP / IP apa (sekarang akan sangat sederhana, jangan membom rekan Anda):

informasi sebelum Anda komp pergi melalui kabel (radio atau apa pun - tidak masalah). Jika arus dilewatkan melalui kabel, artinya 1. Dimatikan, artinya 0. Ternyata 10101010110000 dan seterusnya. 8 nol dan satu (bit) adalah satu byte. Misalnya 00001111. Ini dapat direpresentasikan sebagai angka dalam bentuk biner. Dalam bentuk desimal, byte adalah angka antara 0 dan 255. Angka-angka ini dipetakan ke huruf. Misalnya, 0 adalah A, 1 adalah B. (Ini disebut penyandian).

Jadi. Agar dua komputer dapat mengirimkan informasi secara efektif melalui kabel, mereka harus memasok arus sesuai dengan beberapa aturan - protokol. Misalnya, mereka harus menyepakati seberapa sering arus dapat diubah sehingga 0 dapat dibedakan dari 0 detik.

Ini adalah protokol pertama.

Komputer entah bagaimana memahami bahwa salah satu dari mereka telah berhenti memberikan informasi (seperti "Saya mengatakan semuanya"). Untuk melakukan ini, pada awal urutan data 010100101 komputer dapat mengirim beberapa bit, panjang pesan yang ingin mereka kirim. Misalnya, 8 bit pertama dapat menunjukkan panjang pesan. Yaitu, pertama, dalam 8 bit pertama, angka 100 yang disandikan ditransmisikan dan kemudian 100 byte. Komputer penerima kemudian akan menunggu 8 bit berikutnya dan pesan berikutnya.

Di sini kami memiliki protokol lain, dengan bantuannya Anda dapat mengirim pesan (komputer).

Ada banyak komputer sehingga mereka dapat memahami siapa yang perlu mengirim pesan menggunakan alamat komputer unik dan protokol yang memungkinkan Anda memahami kepada siapa pesan ini ditujukan. Misalnya, 8 bit pertama akan menunjukkan alamat penerima, 8 bit berikutnya akan menunjukkan panjang pesan. Dan kemudian sebuah pesan. Kami baru saja menyelipkan satu protokol ke protokol lainnya. Protokol IP bertanggung jawab untuk pengalamatan.

Komunikasi tidak selalu dapat diandalkan. Untuk pengiriman pesan yang andal (komputer), gunakan TCP. Saat menjalankan protokol TCP, komputer akan saling bertanya lagi apakah mereka menerima pesan yang benar. Ada juga UDP - ini adalah saat komputer tidak menanyakan lagi apakah mereka menerimanya. Mengapa itu perlu? Di sini Anda mendengarkan radio internet. Jika beberapa byte datang dengan kesalahan, Anda akan mendengar, misalnya, "psh" lalu musik lagi. Tidak fatal, dan tidak terlalu penting - UDP digunakan untuk ini. Tetapi jika beberapa byte rusak saat memuat situs, Anda akan mendapatkan sampah di monitor dan tidak akan mengerti apa-apa. Situs ini menggunakan TCP.

TCP/IP (UDP/IP) adalah protokol bersarang yang menjalankan Internet. Pada akhirnya, protokol ini memungkinkan untuk mengirimkan pesan komputer secara utuh dan tepat di alamatnya.

Ada juga protokol http. Baris pertama adalah alamat situs, baris berikutnya adalah teks yang Anda kirim ke situs tersebut. Semua baris http adalah teks. Yang dimasukkan ke dalam TCP pesan yang dialamatkan menggunakan IP, dan seterusnya.

Menjawab

tumpukan protokol adalah seperangkat protokol jaringan yang terorganisir secara hierarkis, cukup untuk mengatur interaksi node dalam jaringan. Protokol bekerja secara bersamaan di jaringan, artinya pekerjaan protokol harus diatur sedemikian rupa sehingga tidak ada konflik atau operasi yang tidak lengkap. Oleh karena itu, tumpukan protokol dibagi menjadi level yang dibangun secara hierarkis, yang masing-masing melakukan tugas tertentu - menyiapkan, menerima, mentransmisikan data, dan tindakan selanjutnya dengannya.

Jumlah lapisan dalam tumpukan bervariasi sesuai dengan tumpukan protokol tertentu. Protokol lapisan bawah sering diimplementasikan dalam kombinasi perangkat lunak dan perangkat keras, sedangkan protokol lapisan atas biasanya diimplementasikan dalam perangkat lunak.

Ada cukup banyak tumpukan protokol yang banyak digunakan dalam jaringan. Tumpukan protokol yang paling populer adalah: OSI dari Organisasi Internasional untuk Standardisasi, TCP / IP, digunakan di Internet dan di banyak jaringan berdasarkan sistem operasi UNIX, IPX / SPX dari Novell, NetBIOS / SMB, dikembangkan oleh Microsoft dan IBM, DECnet dari Digital Equipment Corporation, SNA dari IBM dan beberapa lainnya.

YouTube ensiklopedis

    1 / 3

    Dasar-dasar jaringan data. Model OSI dan tumpukan protokol TCP IP. Dasar Ethernet.

    tumpukan protokol

    Ilmu Komputer. Teknologi jaringan: tumpukan protokol OSI. Pusat Pembelajaran Online Foxford

    Subtitle

Tumpukan protokol komunikasi standar

OSI

Penting untuk membedakan model OSI Dan tumpukan protokol OSI. Sementara model OSI adalah diagram konseptual tentang bagaimana sistem terbuka berinteraksi, tumpukan OSI adalah seperangkat spesifikasi protokol khusus.

Tidak seperti tumpukan protokol lainnya, tumpukan OSI sepenuhnya sesuai dengan model OSI, termasuk spesifikasi protokol untuk ketujuh lapisan komunikasi yang ditentukan dalam model ini:

  • Pada fisik Dan lapisan tautan Tumpukan OSI mendukung protokol Ethernet, Token ring, FDDI, serta protokol LLC, X.25 dan ISDN, yaitu menggunakan semua protokol tingkat rendah populer yang dikembangkan di luar tumpukan, seperti kebanyakan tumpukan lainnya.
  • lapisan jaringan termasuk Connection-oriented Network Protocol (CONP) dan Connectionless Network Protocol (CLNP) yang relatif jarang digunakan. Seperti namanya, yang pertama berorientasi pada koneksi, yang terakhir tidak (tanpa koneksi). Yang lebih populer adalah protokol perutean tumpukan OSI: ES-IS (Sistem Akhir - Sistem Menengah) antara sistem final dan menengah dan IS-IS (Sistem Menengah - Sistem Menengah) antara sistem perantara.
  • lapisan transportasi Tumpukan OSI, sesuai dengan fungsi yang ditentukan untuknya dalam model OSI, menyembunyikan perbedaan antara layanan jaringan berorientasi koneksi dan tanpa koneksi, sehingga pengguna menerima kualitas layanan yang diperlukan terlepas dari lapisan jaringan yang mendasarinya. Untuk memastikan hal ini, lapisan transport mengharuskan pengguna menentukan jumlah pemeliharaan yang diinginkan.
  • Jasa lapisan aplikasi menyediakan transfer file, emulasi terminal, layanan direktori, dan surat. Dari jumlah tersebut, yang paling populer adalah Layanan Direktori (standar X.500), E-mail (standar X.400), Protokol Terminal Virtual (VTP), Transfer File, Protokol Akses dan Kontrol (FTAM), Transfer Pekerjaan dan Protokol Manajemen ( JTM).

TCP/IP

Tumpukan protokol TCP/IP adalah seperangkat protokol jaringan yang menjadi dasar Internet. Biasanya, dalam tumpukan TCP / IP, 3 lapisan teratas (aplikasi, presentasi, dan sesi) dari model OSI digabungkan menjadi satu - aplikasi. Karena tumpukan seperti itu tidak menyediakan protokol transfer data terpadu, fungsi untuk menentukan jenis data ditransfer ke aplikasi.

Tingkat tumpukan TCP/IP:

  1. Lapisan tautan menjelaskan bagaimana paket data ditransmisikan melalui lapisan fisik, termasuk pengkodean (yaitu, urutan bit khusus yang menentukan awal dan akhir paket data).
  2. lapisan jaringan awalnya dirancang untuk mentransfer data dari satu (sub)jaringan ke yang lain. Contoh protokol tersebut adalah X.25 dan IPC di ARPANET. Dengan perkembangan konsep jaringan global, level tersebut diperkenalkan fitur tambahan untuk transmisi dari jaringan apa pun ke jaringan apa pun, terlepas dari protokol lapisan bawah, serta kemampuan untuk meminta data dari sisi jarak jauh.
  3. Protokol lapisan transportasi dapat mengatasi masalah pengiriman pesan yang tidak terjamin ("apakah pesan tersebut sampai ke penerima?"), Dan juga menjamin urutan kedatangan data yang benar.
  4. Pada lapisan aplikasi sebagian besar aplikasi jaringan berfungsi. Program-program ini memiliki protokol komunikasinya sendiri, seperti HTTP untuk WWW, FTP (transfer file), SMTP (email), SSH (koneksi aman ke mesin jarak jauh), DNS (terjemahan alamat karakter-ke-IP) dan banyak lainnya .

Ada ketidaksepakatan tentang bagaimana menyesuaikan model TCP/IP ke dalam model OSI, karena lapisan dalam model tidak sama. Interpretasi yang disederhanakan dari tumpukan TCP / IP dapat direpresentasikan sebagai berikut:

OSI TCP/IP
7. Terapan HTTP, FTP, Telnet, SMTP, DNS (RIP over UDP dan BGP over TCP adalah bagian dari lapisan jaringan), LDAP Terapan
6. Pengajuan
5. Sesi
4. Transportasi TCP, UDP, RTP, NCP) dan Service Advertising Protocol (SAP).

NetBIOS/UKM

Pada lapisan fisik dan tautan data tumpukan ini, protokol yang telah tersebar luas, seperti Ethernet, Token Ring, FDDI, juga terlibat, dan pada tingkat atas, protokol khusus NetBEUI (NetBEUI Extended User Interface Protocol) dan SMB. NetBEUI dirancang sebagai protokol sumber daya rendah yang efisien untuk jaringan hingga 200 workstation. Protokol ini berisi banyak fitur jaringan yang berguna yang dapat dikaitkan dengan lapisan transport dan sesi model OSI, tetapi tidak dapat digunakan untuk merutekan paket. Ini membatasi penggunaan protokol NetBEUI jaringan lokal, tidak dibagi menjadi subnet, dan membuatnya tidak mungkin untuk digunakan dalam jaringan komposit.

Protokol Server Message Block (SMB) mendukung fungsi lapisan sesi, lapisan presentasi, dan lapisan aplikasi. Berdasarkan SMB, layanan file diimplementasikan. serta layanan pencetakan dan pengiriman pesan antar aplikasi.