42
|
20000
|
DNP |
Pozdrav svima, danas ću vam reći po čemu se TCP protokol razlikuje od UDP-a. Protokoli transportnog sloja koji slijede IP u hijerarhiji koriste se za prijenos podataka između procesa aplikacije u mrežnim čvorovima. Paket podataka primljen sa jednog računara na drugi putem interneta mora se preneti u proces obrade, i to upravo za određenu svrhu. Transportni sloj preuzima odgovornost za ovo. Na ovom sloju postoje dva glavna protokola - TCP i UDP.
Šta znači TCP i UDP
TCP- transportni protokol za prenos podataka u TCP/IP mrežama, koji preliminarno uspostavlja vezu sa mrežom.
UDP- transportni protokol koji prenosi poruke datagrama bez potrebe za uspostavljanjem veze u IP mreži.
Dozvolite mi da vas podsjetim da oba protokola funkcionišu na transportnom sloju OSI ili TCP/IP modela, a razumijevanje po čemu se razlikuju je veoma važno.
Razlika između TCP i UDP protokola
Razlika između TCP-a i UDP-a je takozvana “garancija isporuke”. TCP zahteva odgovor od klijenta kome je isporučen paket podataka, potvrdu isporuke, a za to mu je potrebna unapred uspostavljena veza. Takođe, TCP se smatra pouzdanim, dok je UDP čak dobio naziv „nepouzdani datagram protokol. TCP eliminiše gubitak podataka, dupliciranje i miješanje paketa, kašnjenja. UDP radi sve ovo i ne treba mu konekcija za rad. Procesi koji prenose podatke preko UDP-a moraju se zadovoljiti primljenim, čak i onima sa gubicima. TCP kontroliše zagušenje veze, UDP ne kontroliše ništa osim integriteta primljenih datagrama.
S druge strane, zbog takve neselektivnosti i nedostatka kontrole, UDP dosta brže dostavlja pakete podataka (datagrame), pa se za aplikacije koje su dizajnirane za veliki propusni opseg i brzu razmjenu, UDP može smatrati optimalnim protokolom. Tu spadaju mrežne i pretraživačke igre, kao i streaming video gledaoci i aplikacije za video komunikaciju (ili govor): od gubitka paketa, potpunog ili djelomičnog, ništa se ne mijenja, ne morate ponavljati zahtjev, ali je preuzimanje mnogo brže. TCP protokol, kao pouzdaniji, uspješno se koristi čak iu programima za poštu, omogućavajući vam kontrolu ne samo prometa, već i dužine poruke i brzine razmjene prometa.
Pogledajmo glavne razlike između tcp-a i udp-a.
- TCP garantuje isporuku paketa podataka nepromenjenu, sekvencijsku i bez gubitaka, UDP ne garantuje ništa.
- TCP broji pakete u tranzitu, ali UDP ne
- TCP radi u full duplex modu, u jednom paketu možete poslati informaciju i potvrditi prijem prethodnog paketa.
- TCP zahteva unapred uspostavljenu vezu, UDP ne zahteva vezu, to je samo tok podataka.
- UDP obezbeđuje brže brzine prenosa podataka.
- TCP je pouzdaniji i ima kontrolu nad komunikacijskim procesom.
- UDP je poželjniji za programe koji puštaju striming video, video telefon i telefoniju, mrežne igre.
- UPD ne sadrži funkcije oporavka podataka
Primjeri UDP aplikacija, na primjer, prenose DNS zone u Active Directory, gdje pouzdanost nije potrebna. Vrlo često vole postavljati takva pitanja na intervjuima, pa je vrlo važno znati razlike između tcp i udp.
TCP i UDP zaglavlja
Pogledajmo kako izgledaju zaglavlja dva transportna protokola, budući da i ovdje postoje kardinalne razlike.
UDP zaglavlje
- 16-bitni izvorni port> Određivanje izvornog porta za UDP je opciono. Ako se koristi ovo polje, prijemnik može poslati odgovor na ovaj port.
- 16-bitni odredišni port> Broj odredišnog porta
- 16-bitna UDP dužina> Dužina poruke uključujući zaglavlje i podatke.
- 16-bitni kontrolni zbroj> Kontrolna suma zaglavlja i podataka za verifikaciju
TCP zaglavlje
- 16-bitni izvorni port> Broj izvornog porta
- 16-bitni odredišni port> Broj odredišnog porta
- 32-bitni sekvencijalni broj> Sekvencijalni broj generiše izvor i koristi ga odredište za preuređivanje paketa za kreiranje originalne poruke i slanje potvrde izvoru.
- 32-bitni broj potvrde> Ako je ACK bit kontrolnog polja postavljen, ovo polje sadrži sljedeći očekivani redni broj.
- 4-bitna dužina zaglavlja> Informacije o početku paketa podataka.
- rezerva> Rezervisana za buduću upotrebu.
- 16-bitna kontrolna suma> Kontrolna suma zaglavlja i podataka; određuje da li je paket oštećen.
- 16-bitni indikator hitnosti> U ovom polju, ciljni uređaj prima informacije o hitnosti podataka.
- Parametri> Opcione vrijednosti koje su specificirane ako je potrebno.
Veličina prozora vam omogućava da uštedite promet, uzmite u obzir kada je njegova vrijednost 1, ovdje za svaki poslani odgovor pošiljalac čeka potvrdu, nije sasvim racionalno.
Sa veličinom prozora od 3, pošiljalac već šalje 3 okvira, a očekuje od 4, što znači da ima sva tri okvira, +1.
Nadam se da sada imate ideju o razlikama između tcp udp protokola.
TCP/IP je temelj Interneta, preko kojeg računari šalju i primaju informacije sa bilo kojeg mjesta u svijetu, bez obzira na geografsku lokaciju. Pristup TCP/IP računaru u drugoj zemlji je jednostavan kao i pristup računaru u susednoj prostoriji. Procedura pristupa je identična u oba slučaja, iako može potrajati nekoliko milisekundi duže da se povežete na mašinu u drugoj zemlji. Kao rezultat toga, građani bilo koje zemlje mogu lako kupovati na Amazon.com; Međutim, zbog logične blizine, zadatak zaštite informacija postaje složeniji: svaki vlasnik računara povezanog na Internet bilo gdje u svijetu može pokušati uspostaviti neovlaštenu vezu s bilo kojom drugom mašinom.
Odgovornost IT stručnjaka je da instalira firewall i sisteme za otkrivanje sumnjivog saobraćaja. Analiza paketa izdvaja informacije o izvornoj i odredišnoj IP adresi i uključenim mrežnim portovima. Vrijednost mrežnih portova nije inferiorna u odnosu na IP adrese; ovo su najvažniji kriterijumi za odvajanje korisnog saobraćaja od lažnih i štetnih poruka koje ulaze i izlaze iz mreže. Većina internet saobraćaja se sastoji od TCP i UDP paketa, koji sadrže informacije o mrežnim portovima koje računari koriste za usmeravanje saobraćaja od jedne aplikacije do druge. Preduslov za siguran zaštitni zid i mrežu je da administrator ima temeljno razumijevanje o tome kako računari i mrežni uređaji koriste ove portove.
Istraživanje luka
Poznavanje osnovnih principa mrežnih portova dobro će doći svakom administratoru sistema. Sa osnovnim znanjem o TCP i UDP portovima, administrator može dijagnosticirati neispravnu mrežnu aplikaciju ili zaštititi računar za pristup Internetu bez pozivanja mrežnog inženjera ili konsultanta za firewall.
Prvi dio ovog članka (koji se sastoji od dva dijela) opisuje osnovne koncepte potrebne za razmatranje mrežnih portova. Prikazaće se mesto mrežnih portova u ukupnom mrežnom modelu i uloga mrežnih portova i NAT (Network Address Translation) zaštitnih zidova u povezivanju računara kompanije sa Internetom. Konačno, bit će naznačene mrežne točke gdje je zgodno identificirati i filtrirati mrežni promet na odgovarajućim mrežnim portovima. Drugi dio ispituje neke od portova koje koriste uobičajene aplikacije i operativni sistemi i uvodi neke alate za pronalaženje otvorenih portova na mreži.
Kratak pregled mrežnih protokola
TCP/IP je skup mrežnih protokola preko kojih računari međusobno komuniciraju. Skup TCP / IP nije ništa drugo do fragmenti programskog koda instaliranog u operativnom sistemu i koji omogućava pristup ovim protokolima. TCP/IP je standard, tako da TCP/IP aplikacije na Windows mašini moraju uspešno komunicirati sa sličnom aplikacijom na UNIX mašini. U prvim danima umrežavanja, 1983. godine, inženjeri su razvili sedmoslojni OSI model interoperabilnosti kako bi opisali kako računari komuniciraju preko mreža, od kabla do aplikacije. OSI model se sastoji od fizičkog, podatkovnog linka, mreže, transporta, predstavljanja podataka sesije i slojeva aplikacije. Internet i TCP/IP administratori se prvenstveno bave slojevima mreže, transporta i aplikacije, ali postoje i drugi slojevi koji moraju biti poznati za uspješnu dijagnozu. Unatoč znatnoj starosti OSI modela, mnogi stručnjaci ga još uvijek koriste. Na primjer, kada mrežni inženjer govori o prekidačima Layer 1 ili Layer 2, a dobavljač zaštitnog zida govori o kontroli nivoa 7, oni se odnose na slojeve definirane u OSI modelu.
Ovaj članak opisuje mrežne portove koji se nalaze na sloju 4 - transport. U TCP/IP skupu, ove portove koriste TCP i UDP protokoli. Ali prije nego što pređemo na detaljan opis jednog sloja, potrebno je ukratko upoznati se sa sedam OSI slojeva i ulogom koju oni igraju u modernim TCP/IP mrežama.
Slojevi 1 i 2: fizički kablovi i MAC adrese
Sloj 1, fizički, predstavlja stvarni medij u kojem se signal širi - na primjer, bakarni kabel, optički kabel ili radio signale (u slučaju Wi-Fi). Sloj 2, veza podataka, opisuje format podataka za prijenos preko fizičkog medija. Na sloju 2, paketi su organizovani u okvire i može se implementirati osnovna kontrola toka i rukovanje greškama. IEEE 802.3 standard, poznatiji kao Ethernet, najčešći je standard Layer 2 za moderne LAN mreže. Tipičan mrežni prekidač je uređaj sloja 2 koji fizički povezuje više računara i međusobno komunicira. Ponekad se dva računara ne mogu povezati jedan s drugim iako se čini da su IP adrese ispravne: problem može biti zbog grešaka u kešu protokola za rješavanje adrese (ARP), što ukazuje na problem nivoa 2. Osim toga, neke bežične pristupne tačke ( Pristupna tačka, AP) omogućava filtriranje MAC adrese kako bi se omogućilo samo mrežnim adapterima sa određenom MAC adresom da se povežu na bežični AP.
Slojevi 3 i 4: IP adrese i mrežni portovi
Sloj 3, umrežen, podržava rutiranje. U TCP/IP, rutiranje je implementirano u IP. IP adresa paketa pripada sloju 3. Mrežni ruteri su uređaji sloja 3 koji analiziraju IP adrese paketa i prosleđuju pakete drugom ruteru ili isporučuju pakete lokalnim računarima. Ako se sumnjivi paket pronađe na mreži, prvi korak je provjera IP adrese paketa kako bi se ustanovilo odakle paket potiče.
Zajedno sa mrežnim slojem, sloj 4 (transport) je dobra polazna tačka za dijagnosticiranje mrežnih problema. Na Internetu, sloj 4 sadrži TCP i UDP protokole i informacije o mrežnim portovima koji povezuju paket sa određenom aplikacijom. Mrežni stog računara koristi asocijaciju TCP ili UDP mrežnog porta s aplikacijom za usmjeravanje mrežnog prometa na tu aplikaciju. Na primjer, TCP port 80 je povezan sa aplikacijom Web servera. Ovo mapiranje porta do aplikacije poznato je kao usluga.
TCP i UDP su različiti. U osnovi, TCP pruža pouzdanu vezu za razmjenu podataka između dvije aplikacije. Prije razmjene podataka, dvije aplikacije moraju uspostaviti komunikaciju dovršavanjem procesa TCP rukovanja u tri koraka. UDP je više pristup požaru i zaboravu. Pouzdanost komunikacije za TCP aplikacije je osigurana protokolom, a UDP aplikacija mora samostalno provjeriti pouzdanost veze.
Mrežni port je broj od 1 do 65535 koji je specificiran i poznat objema aplikacijama između kojih komuniciraju. Na primjer, klijent obično šalje nešifrirani zahtjev serveru na ciljnoj adresi na TCP portu 80. Obično računar šalje DNS upit DNS serveru na ciljnoj adresi na UDP portu 53. Klijent i server imaju izvor i odredišnu IP adresu, kao i izvorni i odredišni mrežni port, koji mogu biti različiti. Istorijski gledano, svi brojevi portova ispod 1024 nazivani su "dobro poznati brojevi portova" i registrovani su kod Internet Assigned Numbers Authority (IANA). Na nekim operativnim sistemima, samo sistemski procesi mogu koristiti portove u ovom opsegu. Osim toga, organizacije mogu registrirati portove od 1024 do 49151 kod IANA-e kako bi vezali port za svoju aplikaciju. Ova registracija pruža strukturu koja pomaže u izbjegavanju sukoba između aplikacija koje žele koristiti isti broj porta. Međutim, općenito, ništa ne sprječava aplikaciju da zatraži određeni port ako nije zauzet drugim aktivnim programom.
Istorijski gledano, server može slušati na portovima s malim brojem, a klijent može pokrenuti vezu sa porta visokog broja (iznad 1024). Na primjer, Web klijent može otvoriti vezu sa Web serverom na odredišnom portu 80, ali pridružiti proizvoljan izvorni port, kao što je TCP port 1025. Kao odgovor na klijenta, Web server adresira paket klijentu sa izvorom port 80 i odredišni port 1025. Kombinacija IP adrese i porta naziva se utičnica i mora biti jedinstvena na računaru. Iz tog razloga, kada postavljate Web server sa dve odvojene veb lokacije na istom računaru, morate koristiti više IP adresa, kao što su adresa 1: 80 i adresa 2: 80, ili konfigurisati Web server da sluša na više mrežnih portova, kao što je kao adresa 1: 80 i adresa 1: 81. Neki web serveri dozvoljavaju višestrukim web lokacijama da rade na jednom portu tražeći zaglavlje hosta, ali u stvarnosti ovu funkciju obavlja aplikacija web servera na višem nivou 7.
Kako su mrežne funkcije postale dostupne u operativnim sistemima i aplikacijama, programeri su počeli koristiti portove iznad 1024, bez registracije svih aplikacija kod IANA-e. Pretraživanjem interneta za bilo koji mrežni port, obično možete brzo pronaći informacije o aplikacijama koje koriste taj port. Alternativno, možete pretraživati dobro poznate portove i pronaći mnoge web stranice koje navode najčešće portove.
Prilikom blokiranja mrežnih aplikacija na računaru ili popravljanja nedostataka u firewall-u, većina posla se obavlja klasifikacijom i filtriranjem IP adresa sloja 3 i protokola i mrežnih portova sloja 4. TCP i UDP portovi.
Poznavanje i upoznavanje sa mrežnim portovima nije ograničeno na dodeljivanje pravila firewall-u. Na primjer, neke Microsoft sigurnosne ispravke opisuju kako zatvoriti NetBIOS portove. Ova mjera pomaže da se ograniči širenje "crva" koji prodiru u ranjivosti operativnog sistema. Znajući kako i gdje zatvoriti ove portove, možete ublažiti prijetnju vašoj mreži dok se pripremate za implementaciju kritične zakrpe.
I pravo na nivo 7
Rijetko je čuti za sloj 5 (sesija) i sloj 6 (prezentacija) ovih dana, ali sloj 7 (aplikacija) je vruća tema među dobavljačima firewall-a. Najnoviji trend u razvoju mrežnih zaštitnih zidova je kontrola sloja 7, koja opisuje metode koje se koriste za analizu rada aplikacije sa mrežnim protokolima. Analizom korisnih informacija mrežnog paketa, zaštitni zid može utvrditi legitimnost saobraćaja koji prolazi kroz njega. Na primjer, web zahtjev sadrži naredbu GET unutar paketa sloja 4 (TCP port 80). Ako vaš zaštitni zid implementira karakteristike sloja 7, možete potvrditi GET naredbu. Drugi primjer je da mnogi peer-to-peer (P2P) programi za dijeljenje datoteka mogu oteti port 80. Kao rezultat toga, neovlaštena osoba može konfigurirati program da koristi port po svom izboru - najvjerovatnije port koji bi trebao ostati otvoren na firewall. Port 80 treba da se otvori ako zaposlenima kompanije treba pristup Internetu, ali da bi se razlikovao legitimni Web saobraćaj od P2P saobraćaja koji je neko usmerio na port 80, zaštitni zid mora da obezbedi kontrolu nivoa 7.
Uloga zaštitnog zida
Nakon što opišete mrežne slojeve, možete prijeći na opisivanje mehanizma komunikacije između mrežnih aplikacija putem zaštitnih zidova, obraćajući posebnu pažnju na korištene mrežne portove. U sledećem primeru, klijentski pretraživač komunicira sa Web serverom na drugoj strani zaštitnog zida, slično kao da zaposleni u kompaniji pristupa Web serveru na Internetu.
Većina Internet zaštitnih zidova radi na slojevima 3 i 4 kako bi pregledali, a zatim dozvolili ili blokirali ulazni i odlazni mrežni promet. Generalno, administrator kreira liste kontrole pristupa (ACL) koje definišu IP adrese i mrežne portove saobraćaja koji će biti blokirani ili dozvoljeni. Na primjer, da biste pristupili Webu, pokrećete pretraživač i usmjeravate ga na web stranicu. Računar pokreće odlaznu vezu slanjem niza IP paketa koji se sastoje od zaglavlja i korisnog opterećenja. Zaglavlje sadrži informacije o ruti i druge atribute paketa. Pravila zaštitnog zida se često formulišu imajući u vidu informacije o ruti i obično sadrže izvornu i odredišnu IP adresu (sloj 3) i protokol za pakete (sloj 4). Kada pretražujete Web, odredišna IP adresa pripada Web serveru, a protokol i odredišni port (podrazumevano) su TCP 80. Izvorna IP adresa je adresa računara sa kojeg korisnik surfuje Webom, a izvorna IP adresa port je obično dinamički dodijeljen broj veći od 1024. Korisne informacije su nezavisne od zaglavlja i generira ih korisnička aplikacija; u ovom slučaju, to je zahtjev Web serveru da obezbijedi web stranicu.
Firewall analizira odlazni promet i dozvoljava ga u skladu sa pravilima zaštitnog zida. Mnoge kompanije dozvoljavaju sav odlazni saobraćaj sa svoje mreže. Ovaj pristup pojednostavljuje konfiguraciju i implementaciju, ali nema kontrolu nad podacima koji napuštaju mrežu, što ugrožava sigurnost. Na primjer, trojanski konj može zaraziti računar na mreži preduzeća i poslati informacije sa tog računara na drugi računar na Internetu. Ima smisla kreirati ACL-ove za blokiranje takvih odlaznih informacija.
Za razliku od izlaznog pristupa koji koriste mnogi zaštitni zidovi, većina je konfigurirana da blokira ulazni promet. Obično zaštitni zidovi dozvoljavaju ulazni saobraćaj samo u dva slučaja. Prvi je promet koji dolazi kao odgovor na odlazni zahtjev koji je prethodno poslao korisnik. Na primjer, ako navedete adresu web stranice u pretraživaču, zaštitni zid dozvoljava HTML-u i drugim komponentama web stranice da prođu kroz mrežu. Drugi je hostovanje interne usluge na Internetu, kao što je server pošte, veb lokacija ili FTP lokacija. Hostovanje takve usluge obično se naziva prevođenje porta ili objavljivanje servera. Implementacija prevođenja portova razlikuje se od jednog dobavljača firewall-a do drugog, ali osnovni princip je isti. Administrator definiše uslugu kao što je TCP port 80 za Web server i interni server za hostovanje usluge. Ako paketi ulaze u zaštitni zid preko eksternog interfejsa koji odgovara ovoj usluzi, mehanizam za prevođenje portova ih prosleđuje na određeni računar na mreži, skriven iza zaštitnog zida. Prevođenje porta se koristi zajedno sa NAT uslugom opisanom u nastavku.
NAT Basics
NAT omogućava da više računara u kompaniji dijele mali javni IP adresni prostor. DHCP server kompanije može dodijeliti IP adresu iz jednog od blokova privatnih IP adresa koje se ne usmjeravaju na Internetu definirane u zahtjevu za komentare (RFC) # 1918. Više kompanija također može dijeliti isti privatni prostor IP adresa. Primjeri privatnih IP podmreža su 10.0.0.0/8, 172.16.0.0/12 i 192.168.0.0/16. Internet ruteri blokiraju sve pakete usmjerene na jednu od privatnih adresa. NAT je funkcija zaštitnog zida koja omogućava kompanijama koje koriste privatne IP adrese da komuniciraju sa drugim računarima na Internetu. Firewall zna kako da emituje ulazni i odlazni saobraćaj za privatne interne IP adrese tako da svaki računar može pristupiti Internetu.
Na sl. 1 prikazuje osnovni dijagram NAT veze između klijenta i web servera. U fazi 1, promet usmjeren na Internet sa računara na korporativnoj mreži ulazi u interni interfejs zaštitnog zida. Firewall prima paket i pravi unos u tabelu praćenja veze, koja upravlja prevođenjem adresa. Firewall zatim zamjenjuje privatnu izvornu adresu paketa svojom vanjskom javnom IP adresom i šalje paket na odredište na Internetu (korak 2). Odredišni računar prima paket i šalje odgovor zaštitnom zidu (korak 3). Po prijemu ovog paketa, zaštitni zid traži pošiljaoca originalnog paketa u tabeli praćenja veze, zamjenjuje odredišnu IP adresu odgovarajućom privatnom IP adresom i prosljeđuje paket izvornom računaru (korak 4). Pošto zaštitni zid šalje pakete u ime svih internih računara, on menja originalni mrežni port, a ove informacije se pohranjuju u tabeli praćenja veze zaštitnog zida. Ovo je neophodno kako bi odlazne utičnice bile jedinstvene.
Važno je razumjeti kako NAT funkcionira jer NAT mijenja IP adresu i mrežne portove prometnih paketa. Ovo razumijevanje pomaže u dijagnosticiranju grešaka. Na primjer, postaje jasno zašto isti promet može imati različite IP adrese i mrežne portove na vanjskim i internim sučeljima firewall-a.
Prvo temelj, pa struktura
Razumijevanje osnovnih principa umrežavanja sa strane aplikacije, zaštitnog zida i porta je bitno za više od samo mrežnih inženjera. Danas je računarski sistem koji nije povezan na mrežu rijedak, a čak i sistem administratorima je mnogo lakše riješiti svoje probleme razumijevanjem barem osnova korištenja mrežnih portova za komunikaciju aplikacija preko Interneta.
U drugom dijelu članka razmotrit ćemo alat za otkrivanje aplikacija na mreži analizom uključenih mrežnih portova. Za pronalaženje aplikacija koje otvaraju portove za slušanje i koje su dostupne preko mreže, računar se provjerava preko mreže (provjera portova) i lokalno (skeniranje hosta). Osim toga, gledanjem dnevnika zaštitnog zida, možete ispitati mrežni promet koji prelazi granicu mreže i pogledati različite mrežne portove koje koriste Windows i UNIX aplikacije.
Port u računarskim mrežama je krajnja tačka komunikacije u OS-u. Ovaj termin se takođe odnosi na hardverske uređaje, ali u softveru se odnosi na logičku konstrukciju koja identifikuje određenu vrstu usluge ili procesa. Port je uvijek povezan s IP adresom hosta ili tipom komunikacijskog protokola. Završava dodjelu adrese sesije. Port je identifikovan za svaki protokol i adresu pomoću 16-bitnog broja, takođe poznatog kao broj porta. Često se specifični brojevi portova koriste za identifikaciju određenih usluga. Od nekoliko hiljada navedenih, 1.024 poznata broja zaštićena su posebnim ugovorom. Oni definiraju specifične vrste usluga na hostu. Protokoli koji uglavnom koriste portove koriste se za kontrolu procesa. Primjer je TCP protokol kontrole prijenosa ili protokol korisničkih datagrama paketa internetskih protokola.
Značenje
TCP portovi nisu potrebni za direktne veze od tačke do tačke, gde računari mogu pokrenuti samo jedan po jedan program na svakom kraju. Potreba za njima pojavila se nakon što su ove mašine mogle da izvršavaju više od jednog programa u isto vreme. Na kraju su bili povezani na moderne mreže sa komutacijom paketa. U modelu arhitekture klijent-server, svi portovi, aplikacije i mrežni klijenti su povezani za pokretanje usluge. Oni pružaju usluge multipleksiranja nakon što je početna razmjena informacija povezana s brojem porta. Oslobađa se prebacivanjem svake instance zahtjeva za servisiranje na namjensku liniju. Povezivanje na određeni broj se vrši. Ovo omogućava opsluživanje dodatnih kupaca bez čekanja.
Detalji
UDP i TCP se koriste za određivanje broja odredišnog porta i izvora u njihovim zaglavljima segmenta. Broj porta je nepredpisani 16-bitni broj. Može se kretati od 0 do 65535. TCP portovi, međutim, ne mogu koristiti broj 0. Za UDP, izvorni port je opcionalan. Vrijednost jednaka nuli znači da je odsutna. Ovaj proces povezuje ulazne ili izlazne kanale koristeći transportni protokol, broj porta i IP adresu preko internet utičnice. Ovaj proces je poznat i kao povezivanje. Omogućava primanje i prijenos informacija preko mreže. Mrežni softver operativnog sistema koristi se za slanje odlaznih podataka sa svih portova aplikacije u mrežu. Takođe preusmjerava dolazne mrežne pakete odgovarajućim brojevima i IP adresama. Samo jedan proces može biti vezan za određenu IP adresu i kombinaciju porta koristeći isti transportni protokol. Greške aplikacije, koje se nazivaju i sukobi, nastaju kada više programa pokušava komunicirati sa istim brojevima porta na istoj IP adresi koristeći isti protokol.
Kako se primjenjuju
Prilično je uobičajeno da aplikacije koje implementiraju uobičajene usluge koriste posebno rezerviranu i dobro poznatu listu UDP i TCP portova za primanje zahtjeva klijentskih usluga. Ovaj proces je poznat i kao prisluškivanje. To uključuje primanje zahtjeva sa dobro poznatog porta i uspostavljanje dijaloga između klijenta i servera jedan prema drugom koristeći isti lokalni broj porta. Drugi klijenti mogu nastaviti da se povezuju. Ovo je moguće jer je TCP veza identificirana kao lanac lokalnih i udaljenih portova i adresa. Standardni UDP i TCP portovi se mogu definirati sporazumom koji nadgleda IANA ili Internet Assigned Numbers Authority. Tipično, jezgro mrežnih usluga, prvenstveno World Wide Web, koristi male brojeve portova, manje od 1024. U mnogim operativnim sistemima, aplikacije zahtijevaju posebne privilegije da se vežu za njih. Iz tog razloga, često se smatraju ključnim za rad IP mreža. S druge strane, krajnji klijent veze ima tendenciju da ih koristi više, odvojeno za kratkoročnu upotrebu. Iz tog razloga postoje takozvani efemerni portovi.
Struktura
TCP portovi su kodirani u zaglavlju paketa transportnog paketa. Oni se mogu lako interpretirati ne samo od strane računara za prijem i odašiljanje, već i od drugih komponenti mrežne infrastrukture. Posebno su zaštitni zidovi obično konfigurisani da razlikuju pakete na osnovu brojeva odredišnog porta i njihovog izvora. Klasičan primjer za to je preusmjeravanje. Pokušaji povezivanja niza portova na istom računaru poznati su i kao njihovo skeniranje. Takve procedure obično uključuju ili pokušaje zlonamjernog kvara ili činjenicu da mrežni administratori posebno traže moguće ranjivosti kako bi spriječili takve napade. Radnje koje imaju za cilj otvaranje TCP porta se snimaju i nadziru od strane računara. Ova tehnika koristi brojne redundantne veze kako bi se osigurala neprekidna komunikacija sa serverom.
Primjeri korištenja
Glavni primjer u kojem se aktivno koriste UDP i TCP portovi je sistem internetske pošte. Server se koristi za rad sa e-poštom. Generalno, trebaju mu dvije usluge. Prva usluga se koristi za transport putem e-pošte i sa drugih servera. Ovo se postiže korišćenjem jednostavnog protokola za prenos pošte (SMTP). Aplikacija SMTP usluge obično sluša TCP port 25 kako bi obrađivala dolazne zahtjeve. Druga usluga je POP ili IMAP. Potrebni su za klijentske aplikacije u e-pošti na mašinama korisnika kako bi primali e-poruke sa servera. POP servisi osluškuju brojeve sa TCP porta 110. Sve gore navedene usluge mogu raditi na istom host računaru. Broj porta, kada se to dogodi, razlikuje uslugu koju zahtijeva udaljeni uređaj. Ako je broj porta za slušanje servera definiran ispravno, ovaj parametar za klijenta se određuje iz dinamičkog raspona. Klijenti i server odvojeno u nekim slučajevima koriste specifične TCP portove koje dodjeljuje IANA. DHCP je dobar primjer. Ovdje klijent ionako koristi UDP 68, a server koristi UDP 67.
Upotreba u URL-ovima
Ponekad su brojevi portova jasno vidljivi na Internetu ili na drugim uniformnim lokatorima resursa kao što su URL-ovi. HTTP podrazumevano je TCP port 80, a HTTPS podrazumevani port 443. Postoje i druge varijacije. Na primjer, URL http://www.example.com:8080/path označava da se web pretraživač povezuje na 8080 umjesto na HTTP server.
Lista UDP i TCP portova
Kao što je ranije navedeno, IANA, ili InternetA potpisano tijelo za brojeve, odgovorno je za globalnu koordinaciju DNS-Root-a, IP adresiranja i drugih resursa Internet protokola. Ove procedure uključuju registraciju često korištenih portova za dobro poznate internetske usluge. Svi brojevi portova podijeljeni su u tri raspona: dobro poznati, registrirani i privatni ili dinamički. Dobro poznati portovi su oni sa brojevima od 0 do 1023. Nazivaju se i sistemskim portovima. Zahtjevi za nove vrijednosti u ovom rasponu su stroži nego za druge registracije.
Primjeri
Primjeri portova na listi poznatih portova uključuju:
- TCP 443 port - HTTPS;
- 21 - Protokol za prijenos datoteka;
- 22- Secure Shell;
- 25 - Simple Mail Transfer Protocol STMP;
- 53 - Sistem imena domena DNS;
- 119 - Network News Transfer Protocol ili NNTP;
- 80 - HTTP protokol za prijenos hiperteksta;
- 143 - Internet Message Access Protocol;
- 123 - NTP mrežni vremenski protokol;
- 161 je jednostavan protokol za upravljanje mrežom SNMP.
Registrovani portovi su nužno numerisani od 1024 do 49151. Autoritet za dodijeljene brojeve na Internetu održava zvaničnu listu svih poznatih i registrovanih opsega. Frekvencijski ili dinamički portovi su u rasponu od 29152 do 65535. Privremeni portovi su jedna upotreba za ovaj raspon.
Istorija stvaranja
Koncept brojeva portova razvili su rani kreatori ARPANET-a. Razvijen je kroz neformalnu saradnju između autora softvera i administratora sistema. Termin "broj porta" tada se još nije koristio. Broj udaljenog hosta bio je 40-bitni broj. Prva 32 bita ličila su na današnju IPv4 adresu. Najznačajniji su bili prvih 8 bita. Manje značajan dio broja (ovo su bitovi od 33 do 40) označava objekat koji se zove AEN. Bio je to prototip modernog broja porta. Kreiranje imenika brojeva soketa prvi put je predloženo 26. marta 1972. godine. Mrežni administratori su zatim ohrabreni da opišu svaki stalni broj u smislu mrežnih usluga i njegovih funkcija. Ovaj direktorij je naknadno objavljen u RFC 433 u zimu 1972. Sadržao je listu hostova, njihove brojeve portova i odgovarajuću funkciju koju koristi svaki čvor na mreži. Zvanični brojevi luka prvi put su dokumentovani u maju 1972. Istovremeno je predložena posebna administrativna funkcija za vođenje ovog registra. Prva lista TCP portova uključivala je 256 AEN vrijednosti, podijeljenih u sljedeće raspone:
- od 0 do 63 - standardne funkcije cijele mreže;
- od 64 do 127 - funkcije specifične za domaćin;
- od 128 do 239 - funkcije rezervirane za buduću upotrebu;
- od 240 do 255 - bilo koja eksperimentalna funkcija.
U ranim danima ARPANET-a, AEN se takođe pozivao na ime utičnice koje se koristilo sa originalnim protokolom povezivanja i komponentom programa za kontrolu mreže, ili NCP. U ovom slučaju, NCP je bio preteča modernih Internet protokola koji koriste TCP/IP portove.
Top srodni članci