Meskipun pertanyaan ini telah ditandai sebagai dijawab, saya ingin menjawab beberapa pertanyaan tambahan yang diajukan dalam OP.
Apakah port ini benda fisik?
Tidak ada port yang bukan benda fisik.
Nomor port adalah integer 16-bit unsigned, yang berarti kisaran port yang tersedia untuk digunakan adalah dari 1 hingga 65535 (nomor port 0 dicadangkan dan tidak dapat digunakan). Suatu proses mengaitkan saluran input atau outputnya melalui soket Internet, jenis deskriptor file, dengan protokol transport, nomor port, dan alamat IP. Proses ini dikenal sebagai mengikat, dan memungkinkan pengiriman dan penerimaan data melalui jaringan.
Apakah mereka dibangun di bagian komputer saya? Apakah mereka bahkan bersifat fisik? Atau ditulis dalam kode? Di mana kode ini? Sistem operasinya? Apa itu port sebenarnya?
Perangkat lunak jaringan sistem operasi memiliki tugas mentransmisikan data keluar dari semua port aplikasi ke jaringan, dan meneruskan paket jaringan yang tiba ke suatu proses dengan mencocokkan alamat IP paket dan nomor port.
Hanya satu proses yang dapat mengikat ke alamat IP tertentu dan kombinasi port menggunakan protokol transport yang sama. Kegagalan aplikasi umum, kadang-kadang disebut konflik port, terjadi ketika beberapa program berupaya untuk mengikat nomor port yang sama pada alamat IP yang sama menggunakan protokol yang sama.
Paragraf di atas adalah kunci untuk memahami mengapa port / protokol digunakan dalam jaringan. Jika kami tidak memiliki cara untuk menentukan protokol, yang mentransmisikan data melalui nomor port apon yang disepakati - Anda tidak akan dapat melakukan lebih dari 1 hal sekaligus (periksa email Anda dan gunakan web) karena komputer Anda akan memiliki tidak ada cara untuk membedakan antara data untuk klien email Anda dan data untuk situs web yang Anda jelajahi.
Ada berapa port?
Nomor port diberikan dalam berbagai cara, berdasarkan tiga rentang:
Terkenal / Port Sistem (0-1023) - Rentang port ini digunakan oleh proses sistem yang menyediakan jenis layanan jaringan yang banyak digunakan (HTTP / 80, HTTPS / 443, Telnet / 21, SSH / 22)
Port Terdaftar / Pengguna (1024-49151) - Kisaran nomor port dari 1024 hingga 49151 adalah port terdaftar. Mereka ditugaskan oleh IANA untuk layanan spesifik setelah aplikasi oleh entitas yang meminta. (Webmin / 10000, HTTP Proxy / 8080, Remote Desktop Protocol / 3389, dll)
Port Ephemeral / Dynamic / Privat (49152-65535) - Kisaran 49152-65535 berisi port dinamis atau pribadi yang tidak dapat didaftarkan dengan IANA. Rentang ini digunakan untuk tujuan khusus atau sementara dan untuk alokasi otomatis port sementara.
Bisakah saya menambah atau mengurangi jumlah port?
Sehubungan dengan dapat meningkatkan jumlah port yang tersedia, Anda tidak dapat menetapkan port di atas 65535 karena matematika yang memungkinkan jaringan berfungsi (biner) - jadi jawaban untuk pertanyaan ini adalah tidak, Anda tidak dapat meningkatkan jumlah total yang tersedia port di atas 65535.
Apa itu protokol?
Dalam ilmu komputer, protokol komunikasi adalah sistem aturan digital untuk pertukaran pesan di dalam atau di antara komputer. Ketika pesan dipertukarkan melalui jaringan komputer, sistem aturan disebut protokol jaringan. Protokol pada dasarnya adalah seperangkat instruksi / perintah / panggilan yang disepakati yang dapat dikomunikasikan oleh dua perangkat jaringan. Pikirkan jika kami tidak menyetujui protokol dan server web hanya mengirim data secara acak ke browser web bahwa browser tidak tahu apa yang harus dilakukan? Untungnya kami memiliki HTTP dan semua browser web yang dibuat telah dibangun ke dalam perangkat lunak sehingga dapat berkomunikasi dengan server web apa pun yang juga berbicara bahasa yang sama (HTTP).
Saya membayangkan mereka semacam kode .... Bisakah Anda membuat protokol sendiri? Bahasa apa yang Anda gunakan untuk membuat protokol?
Ya, Anda dapat membuat protokol sendiri. Protokol ditulis dalam berbagai bahasa. Saya bukan pengembang perangkat lunak, tetapi saya cukup yakin bahwa selama bahasa apa pun yang Anda gunakan memiliki perpustakaan yang memungkinkan Anda untuk menulis perangkat lunak yang dapat berkomunikasi melalui TCP / IP (ada suite protokol lain, tetapi TCP / IP adalah yang paling banyak digunakan) Anda dapat menggunakan bahasa itu untuk menulis protokol. Bahasa pemrograman 'C' tampaknya menjadi yang paling umum digunakan untuk menulis protokol. Hal ini disebabkan oleh fakta bahwa banyak protokol jaringan pertama dikembangkan pada UNIX pada tahun 1970-an dan C adalah bahasa yang digunakan UNIX.
Bagaimana Anda mendapatkan port spesifik untuk menjalankan protokol tertentu?
Ini sedikit berbeda antara OS. Misalnya, untuk mengubah nomor port yang dijalankan Remote Desktop Protocol di Windows, Anda perlu mengedit registri. Di Linux, banyak layanan jaringan dapat dikonfigurasi secara langsung dari file .conf untuk layanan jaringan tertentu.
Bagaimana Anda mendefinisikan atau menciptakan protokol baru?
Lihat https://journal.paul.querna.org/articles/2012/02/22/designing-network-protocols/ untuk posting blog oleh seseorang yang baru-baru ini mengembangkan protokol jaringan baru dan hal-hal apa yang harus dia lakukan sepanjang jalan.