Light Mode

Siirry sisaltoon

TCP/IP

Wikipediasta
TCP/IP-pino
sovelluskerros

sovelluskerros
BGP * DHCP * DNS * ESMTP * FTP * HTTP * IMAP * IRC * LDAP * MGCP * NNTP * NTP * POP3 * RPC * RTP * RTSP * SIP * SMTP * SNMP * SOCKS * SSH * Telnet * TLS/SSL * XMPP * (..lisaa..)
kuljetuskerros

kuljetuskerros
TCP * UDP * QUIC * DCCP * SCTP * RSVP * RIP * ECN
verkkokerros

verkkokerros
IP (IPv4 ja IPv6) * ICMP (ICMPv6) * IGMP * IPsec
siirtoyhteyskerros ARP * IS-IS * NDP * OSPF * L2TP * PPP
fyysinen kerros

TCP/IP (Transmission Control Protocol / Internet Protocol) on usean Internet-liikennoinnissa kaytettavan tietoliikenneprotokollan yhdistelma eli pino. IP-protokolla on alemman tason protokolla, joka vastaa paatelaitteiden osoitteistamisesta ja verkkopakettien reitittamisesta verkossa. Sen paalla voidaan ajaa useita muita verkko- tai kuljetuskerroksen protokollia, joista TCP-protokolla on yleisin. Se vastaa kahden paatelaitteen valisesta tiedonsiirtoyhteydesta, pakettien jarjestamisesta ja hukkuneiden pakettien uudelleenlahetyksesta.

Vaikka TCP/IP-protokollaperheeseen kuuluu monia muitakin protokollia, paaosa liikennoinnista tapahtuu TCP-yhteyksina IP-protokollan paalla. Taman takia protokollaperhe yleensa tunnetaan nimella TCP/IP.

TCP/IP-protokollapino.

TCP/IP toteuttaa Internet-arkkitehtuurin ja juontaa juurensa ARPANETin referenssimalliin (engl. ARPANET Reference Model, ARM).[1] Muita kehitettyja protokolla-arkkitehtuureja ovat muun muassa Xeroxin XNS seka IBM:n SNA.[1] TCP/IP protokollaperhe noudattaa ARPANETin mallia, jossa on viisi kerrosta toisin kuin OSI-mallin seitseman, ja osa toiminnoista on epavirallisessa kerroksessa 2.5 kuten ARP-protokolla.[1]

Xerox halusi pitaa XNS:n suljettuna ja tiukasti omassa hallussaan.[2] Samaan aikaan TCP/IP oli vasta varhaisessa vaiheessa.[2]

Louis Pouzin kehitti Ranskassa CYCLADES-tietokoneverkkoa, joka vaikutti myos TCP/IP:n kehitykseen.[3][4] ARPANETin kayttaman NCP-protokollan ja CYCLADESin kayttaman STST-protokollan epayhteensopivuuksien tutkimuksen myota Gerard Le Lann kutsuttiin Stanfordiin Vint Cerfin ryhmaan, jossa han osallistui "liukuvan ikkunan" menetelman kehitykseen TCP/IP:ta varten.[5] Vint Cerf tyoskenteli DARPAssa TCP/IP:n toteutuksen kanssa ja Bill Joy sai tehtavakseen integroida TCP/IP:n Unixiin, mutta kirjoitti toteutuksen uudelleen vuonna 1982 pelkan integroimisen sijaan.[2] Seurauksena toteutuksen lahdekoodit olivat saatavilla kayttojarjestelman mukana, joka oli saatavilla myos VAX-alustalle ja Ethernet-verkkoon.[2] ARPANET siirtyi kayttamaan TCP/IP:ta 1. tammikuuta 1983.[2] Berkeley Unixin myota TCP/IP levisi myos CERNiin.[6]

OSI-protokollapinon oli tarkoitus korvata TCP/IP 1980-luvulla, mutta TCP/IP oli jo kasvavassa kaytossa.[7][8][9]

Varhaiset versiot TCP/IP protokollapinosta on kuvattu Internet Experiment Note (IEN) dokumenteissa, joista IEN 2 kuvailee TCP:n ja IP:n erillisina protokollina eika yhdistettyna kuten aiemmin.[10] IEN 2:ssa TCP-protokollan tehtavat jaetaan kahtia ja esitellaan IP-protokollan versio 0.[10] TCP:n vastuulle jaa "paasta-paahan" tapahtuva kommunikaatio ja IP:n vastuulle reititettava "hyppy-hypylta" kommunikaatio, jotka aiemmin olivat molemmat TCP:n tehtavia.[10]

Eri kerroksien protokollatiedot (engl. protocol data unit, PDU) kapseloidaan toisessa kerroksessa.[1] Kerroksittaisella kapseloinnilla mahdollistetaan protokollien multipleksaus ja usean eri protokollan elaminen yhdessa samassa infrastruktuurissa.[1] Kapselointi mahdollistaa useita yhtaaikaisia instansseja (kuten yhteydet, connections) ilman hairioita toisiinsa.[1] Kapselointi kasittelee toisen kerroksen dataa lapinakymattomasti tulkitsematta sita.[1]

Datan kapselointi sen liikkuessa kerroksien valilla, kuten kuvattu dokumentissa RFC 1122.

TCP/IP-protokollaperheesta vastaa IETF-standardointiorganisaatio. Sovellus-, kuljetus- ja verkkokerroksen protokollat maaritellaan sen hyvaksymissa RFC-sarjan dokumenteissa. Fyysisen peruskerroksen protokollat eivat kuulu TCP/IP-protokollaperheeseen vaan ne ovat usein IEEE-, IEC- tai ITU-standardointiorganisaatioiden maarittelemia. Internetissa kaytettavan sisallon esitys on eri tahojen maarittelemaa, esimerkiksi W3C-standardointiorganisaatio on maaritellyt HTML- ja XML-esitystavat.

IP-protokolla

[muokkaa | muokkaa wikitekstia]
Paaartikkeli: IP

Verkkokerroksen IP-protokolla on TCP/IP-protokollan ydin. Verkossa tietoa valittavat reitittimet valittavat ainoastaan IP-paketteja, mika perustuu IP-pakettien otsikkokenttien tietoihin. Kaikki ylemman tason protokollat, kuten TCP, ovat sisallytetty, kapseloitu, IP-paketin data-osioon. Nain ollen IP-tasolla toimiva verkko ei ole tietoinen ylemman tason protokollista ja yhteyksista.

HTTP FTP SNMP DNS
ICMP TCP UDP
Internet-protokolla
Ethernet Token
Ring
ATM UMTS

IP-protokollaa voidaan ajaa lahes minka tahansa verkon paalla, joten silla on helppo yhdistaa erilaisia verkkoja isommiksi kokonaisuuksiksi. Internet on vain yksi mutta merkittavin talla tavalla rakentunut verkko. Internet-protokollassa internetilla tarkoitetaan verkkojen valista verkkoa.

Lahes mita tahansa sovellusta voidaan ajaa internet-protokollan paalla. Yksinkertainen internet-protokolla, jonka paalle on helppo rakentaa kaikenlaista, voi toimia pohjana lahes minkalaiselle sovellukselle tahansa.

Internet-protokollan suunnitteluperiaatteena on ollut IP over everything, everything over IP.

TCP-protokolla

[muokkaa | muokkaa wikitekstia]
Paaartikkeli: TCP

Kuten TCP/IP-protokollaperheen nimesta voi paatella, toinen tarkea perheen protokolla on TCP-protokolla, joka luo yhteydet tietokoneiden sovellusten valille kayttaen IP-paketteja. Se huolehtii vianhallinnasta, luotettavuudesta, kuittauksista ja pakettien laittamisesta oikeaan jarjestykseen.

UDP-protokolla

[muokkaa | muokkaa wikitekstia]
Paaartikkeli: UDP

UDP (User Datagram Protocol) on sovelluksille tarjottava tietosahke. UDP:ssa on TCP:n kaltainen porttimekanismi ja se sijaitsee samassa kuljetuskerroksessa kuin TCP.

UDP ei takaa viestin perille valittamista vaan tama jaa kayttajasovelluksen oman paatannan ja kasittelyn haltuun. UDP-paketteja kaytetaan kun tietomaara on suuri, mutta jokaisen viestin perille saapumista ei tarvita. UDP:n kayttoon toisinaan viitataan myos UDP/IP-parina.

Muut kuljetus- ja verkkokerroksen protokollat

[muokkaa | muokkaa wikitekstia]

SCTP ja RTP ovat uudemmat vaihtoehdot TCP:lle ja UDP:lle puhelinverkkosovellusten tyyppiseen luotettavampaan kayttoon. Niita kuitenkin kaytetaan viela vahan.

ICMP (Internet Control Message Protocol) on internet-protokollan valvontaprotokolla, jolla laitteet kommunikoivat keskenaan IP-pakettien perille toimittamiseen liittyvia kiireisia viesteja.

Lahiverkkoratkaisuilla on protokollat, joilla IP-osoitteen perusteella loydetaan vastaava lahiverkon osoite. Tavallisin tallainen protokolla on Ethernet-verkkojen MAC-osoitteiden etsimiseen tarkoitettu protokolla ARP (Address Resolution Protocol).

DHCP (Dynamic Host Configuration Protocol) protokollalla tietokone, joka ei tieda omaa IP-osoitettaan, voi kysya sita verkosta. Tama on valttamatonta esimerkiksi kannettavissa tietokoneissa, joiden on saatava kulloiseenkin sijaintipaikkaansa soveltuva IP-osoite.

DNS (Domain Name Service) on palvelu, jolla Internetin domain-nimet, kuten www.firma.fi, muunnetaan IP-osoitteeksi.

Internetin reitittimet vaihtavat keskenaan reititystietoa, jonka avulla voidaan loytaa optimaalinen reitti kahden solmun tai verkon valilla. Reititysprotokollia ovat esimerkiksi OSPF, BGP ja RIP.

  1. | a b c d e f g Fall, Kevin R. & Stevens, W. Richard: TCP/IP Illustrated, Volume. (Second Edition) Addison-Wesley. ISBN 978-0-321-33631-6
  2. | a b c d e James Pelkey: TCP/IP and XNS 1981 - 1983 historyofcomputercommunications.info. Arkistoitu 17.6.2018. Viitattu 6.6.2018.
  3. | Louis Pouzin Internet Hall of Fame. Viitattu 17.6.2018.
  4. | James Pelkey: CYCLADES Network and Louis Pouzin 1971 - 1972 historyofcomputercommunications.info. Arkistoitu 17.6.2021. Viitattu 17.6.2018.
  5. | Between Stanford and Cyclades, a transatlantic perspective on the creation of Internet inria.fr. 9.11.2020. Viitattu 11.7.2024. (englanniksi)
  6. | Ben Segal: A Short History of Internet Protocols at CERN ben.home.cern.ch. huhtikuu 1995. Arkistoitu 2.5.2015. Viitattu 17.6.2018.
  7. | Andrew L. Russell: OSI: The Internet That Wasn't 30.7.2013. IEEE Spectrum. Viitattu 17.6.2018.
  8. | James Pelkey: ISO/OSI (Open Systems Interconnection): 1979 - 1980 historyofcomputercommunications.info. Arkistoitu 17.6.2018. Viitattu 17.6.2018.
  9. | OSI Protocols Techopedia. Viitattu 17.6.2018.
  10. | a b c Jon Postel: IEN 2, Comments on Internet Protocol and TCP rfc-editor.org. 15. elokuuta 1977. Viitattu 23.5.2019. (englanniksi)

Aiheesta muualla

[muokkaa | muokkaa wikitekstia]