Internet - vad är det? Teknik ===== Man kan koppla ihop datorer på olika sätt. Ifall det är datorer som står i samma rum och de inte är så många kan man kanske tänka sig att koppla ihop dem såhär: (bildtext: Ringarna är datorer) När antalet datorer växer till fler än ungefär tre inser man snabbt att det blir en väldans massa sladd. Man kan då koppla dem såhär: (bildtext: Burken i mitten är en slags kopplingpunkt som alla meddelanden går tvärs igenom.) Nackdelen här är att systemet blir ganska sårbart. Ifall burken i mitten kraschar så kraschar hela nätverket. Man kan då göra som IBM: Meddelande färdas hela tiden i en riktning i ringen. Nätverkstypen kallas Token Ring. Även denna typen av nätverk är känslig för fel; om någon kabel går av så stannar nätverket. Man kan då göra om nätverket till: Burken i mitten här är ganska enkel och kan i princip byggas ihop av rör och reläer. Ett tredje alternativ är att placera datorerna längs samma sladd: När de vill skicka meddelanden kan det då hända att de pratar i mun på varandra. De får isåfall ta ett steg tillbaka och vänta en liten stund och försöka igen sedan. Det är i princip denna typen av nät som används i RydNET och i pularna på IDA. När nät ska kopplas över lite större avstånd använder man andra lösningar. Om företag A vill prata med företag B så kan de gå ihop om en gemensam maskin som kopplar ihop deras båda nät. Man stoppar helt enkelt i två nätverkskort i den maskinen. Denna modellen fungerar inte bra ifall det är fler företag/nät inblandade eftersom trafik mellan nätets ytterändar måste passera de inre näten. Lösningen på detta problemet är att använda ett matarnät som de mindre näten kopplar in sig på. Matarnäten kallas på engelska för backbone och på svensk hackerjargong för bakben. IP -- Meddelanden som skickas över matarnätet skickas mellan olika mindre nätverk och därav kommer termen Internet -- mellan nätverk. En standard som specificerar hur datorer på Internet kommunicerar med varandra har byggts av DARPA (Defence Advanced Research Projects Agency, som sorterar under försvaret i USA) och kallas Internet Protocol -- IP. Meddelandena som skickas på nätet kallas paket. Paketen skickas är upp till ungefär 1,5 kB stora (???). De skickas med en metod som kallas Connectionless Datagram Delivery. Det här sättet att skicka paket på är opålitligt. Ingen kvittens görs på att data verkligen kommit fram. Felhantering sker på högre nivå. Samtidigt är det ett enkelt protokoll. En bidragande orsak till att Internet blivit så stort är nog att det finns ett standardiserat gränssnitt mot hårdvaran som gör att det inte spelar någon roll vilken hårdvara som används. "Att implementera det här borde inte innebära alltför många timmars hacking", sade Ture. IP-paket, d.v.s. paketen som skickas över nätet ser förenklat ut såhär: Adressering ----------- För att kunna skicka paket till någon annan dator måste man ha en adress att skicka det till. En adress fungerar i princip så att den är uppdelad i nätverksdel och maskindel. Varje nätverk har ett nummer och maskinerna som är kopplade till det nätverket är numrerade inom det nätverket. En effekt av detta är att den dator som används som länk mellan de två näten får två adresser. (bildtext: Det vänstra nätet har nummer 1, det högra 2. Datorn längst upp till vänster skulle då få numret 1/2. Datorn i mitten får adresserna 1/3 och 2/1.) En adress på Internet består av 32 bitar. Man kan då dela upp adresserna och näten i få stora nät med många datorer eller många små nät med färre datorer. På Internet har man valt att inte välja vilket alternativ man vill ha utan det har fått lösa sig efterhand. Det finns följande typer av nät på Internet: o små nät (kallas C-nät. De 32 bitarna är uppdelade som "110", 21 bitar till nätadress, 8 bitar till maskinadress) (???) RydNET består av sådana. o stora nät (kallas B-nät. Uppdelning: "10", 14 bitar nät, 16 bitar maskin) Linköpings unversitetsnät är ett sådant. o jättestora nät (kallas A-nät. Uppdelning: "0", 7 bitar nät, 24 bitar maskin) Det finns inte så många sådana nät (???). Ett sådant är dock amatörradionätet som har nummer 44. Någon i publiken sade att IBM hade A-nät nummer 1. Alla bitar till trots håller Internetadresserna på att ta slut och man funderar på att utöka antalet bitar i som används för adresser. För att åtminstone göra det lite lättare för människor att läsa och använda 32-bitars adressen delas den upp 4 delar om 8 bitar vardera, vilka åtskiljs av en punkt. Man kan använda "subnetting" för att dela upp bitarna som är avsedda för maskinadress i ett nytt undernät med nya maskinadresser. Ett exempel på en adress är 130.236.254.13 som datornostalgiker inom Lysator känner igen. (??? Vilken är det? Någon från pul17-tiden? Jag kan lägga en liten "Följ denna länken för att få reda på vilken"-frågesport-aktik-länk här. ???). Här talar de första bitarna i 130 om att det är ett B-nät. Sedan har maskinadressen som utgörs av de sista 16 bitarna ytterligare delats upp i ett nytt undernät med de sista 8 bitarna (???) som maskinadresser. Hur paketen skickas ------------------- Den fysiska transportteknik man använder sig av kan vara olika från nät till nät, men standarder finns. Det finns även en standard för hur man använder sig av brevduvor för att transportera Internetpaket. Den är daterad den 1:e april något år. Det är orimligt att låta varje dator veta alla andra adresser som alla datorer har. Ifall datorn som ska skicka meddelandet inte vet var datorn som ska ta emot det finns skickas meddelandet till någon värd som bestämts i förväg. Om den värden inte heller vet var mottagaren finns så skickas paketet vidare uppåt i hierarkin av nät och matarnät. Matarnät kan naturligtvis vara sammankopplade och om datorerna som styr nättrafiken får fel i sina tabeller över var datorerna finns kan det hända att paket som ska från Mjärdevi till Lysator får ta vägen via Stockholm, Wien och Paris innan de kommer fram. Hur paketen hanteras -------------------- Vad som inte behandlats hittills är hur paketen ska tolkas av datorerna. Det finns även ett fält i paketet som anger vilket "Sub Protocol" som ska användas. Här använder man UDP och TCP. o UDP -- User Datagram Protocol. I datadelen av paketet stoppar man in ett UDP-paket. Där kan man t.ex. ange vilken port man vill koppla sig till. UDP används mest av NFS (Network File System, d.v.s. fildelning över nätverk) och NIS (Network Information System, som har hand om bl.a. lösenord över nätverk). o TCP -- Transmission Control Protocol. Man får här en uppkopplad byteström till en port på en dator. Felkontroll med kvittenser löser problemet att det inte är säkert att IP-paket kommer fram. Olika protokoll som ligger på varandra kallas en protokollstack. Protokollstacken som beskrivits här ser ut såhär: De flesta applikationerna använder Internet på antingen UDP- eller TCPnivå, men det finns även program som går in direkt på IP-nivån. Ett sådant är ping som man kan använda för att se ifall någon annan dator på nätverket är någorlunda vaken. Namnuppslagning --------------- Att behöva komma ihåg ett 32-bitars namn för varje dator skulle i längden bli jobbigt. Därför kan man sätta namn på dem, men för att undvika alla krockar som skulle uppstå mellan datorer som fick heta likadant, t.ex. oden, är namnen hierarkiskt ordnade. Namnen är ordnade med den mest signifikanta delen sist och även här är de olika ingående delarna av namnet åtskiljda av en punkt. Ex: dator.lysator.liu.se för datorer på Lysator under Linköpings universitet i Sverige. Då amerikanerna en gång hittade på Internet gav de olika namn åt olika typer av nät: o .com för kommersiella nät o .edu för utbildning o .gov för saker som har med regeringen att göra o .mil för militära nät o .net för nätverk som bara ät nätverk o .org för organisationer. När Internet sedan expanderade och länder som Sverige och Finland kom med fick de näten kallas .se och .fi o.s.v. Under .se kommer bl.a. .liu och .luth. Under .Liu kommer bl.a. .lysator och .ida. På så sätt bildas ett träd av domäner. Namnuppslagning går till ungefär på samma sätt som för Internetadresser. I varje domän finns en nameserver som känner til alla datorer inom den domänen. Ifall en dator inte vet var mottagaren finns skickar den fråga till närmast överordnade nameserver i trädhierarkin. Tillämpningar ============= Det är ju bra att man kan koppla ihop datorer, men det vore inte så kul ifall man inte kunde göra något med dem. Vad kan man då göra på Internet? Telnet ------ Med telnet kan man logga in på en annan dator precis som om man sutte vid datorn ifråga. Det kan vara praktiskt. Email ----- Mailadresser har ett "@"-tecken i mitten. Exempel: ture@lysator.liu.se. Här ska man inte förväxla domännamnet, d.v.s. det som kommer efter @-tecknet, med datornamn trots att kan se likadana ut. Som exempel kan nämnas att nät Carl Bildt fick IT-fnatt och skaffade sig en email-adress såg den ut något i stil med statsminister@sb.gov.se, men det finns ingen dator med adressen sb.gov.se utan den adressen gick istället till en dator på Handelshögskolan. Som kuriosa kan nämnas att adresser som ser ut som foo!bar!fie!lysator!ture är UUCP-adresser. Det innebär att datorerna ringer upp varandra någon gång mitt i natten och skickar över dagens skörd av brev. foo!bar!fie!lysator är då den vägen som man i förväg måste bestämma att brevet ska ta. Den här typen av email-adresser är idag inte särskilt vanlig och återfinns mest i gamla dokument. Ytterligare ett användningsområde för email är mailinglistor. Det fungerar som så att när man skickar brev till en mailinglista så skickas det brevet vidare till alla som är med på den mailinglistan. Listorna används av olika grupper som vill kommunicera med varandra om något ämne. Det finns listor för alla möjliga diskussionsämnen. En mailinglista har oftast två adresser: o foo-list@... som är själva listadressen. o foo-request@... som används för administrativa meddelanden om listan foo, såsom t.ex. ifall man vill prenumerera på listan eller gå ur listan. News ---- Om väldigt mycket folk ska diskutera saker är det enklare att använda news. News fungerar så att man skriver en text och skickar den till en newsserver. Denna tar sedan hand om texten och skickar den till andra newsservers. På så sätt distribueras newstexterna över hela världen. News är indelat i olika intressegrupper som är hierarkiskt ordnade med den mest signifikanta delen först "bara för att förvirra nybörjarna", sade Ture. Några olika intressen visas här: o comp för computer science o misc för allt som inte passar in någon annanstans o news för saker som rör själva newssystemet o rec för recreational o sci för vetenskaper utom det som har med datorer att göra o soc för humaiora o liu distribueras bara inom Linköping universitet. Därunder finns t.ex. gruppen o liu.lysator där Lysators verksamhet dsikuteras, eller rättare diskuterades. Nu används LysKOM. Det finns för närvarande ca 6000 olika intressegrupper i news. För att läsa news kan man starta programmet nn. Någon ur publiken meddelade att det går alldeles utmärkt att läsa news med NetScape och att det är betydligt enklare än med nn. Man trycker på knappen Newsgroups eller väljer Go to Newsgroups under Directory-menyn. FTP --- FTP står för File Transfer Protocol. Vill man flytta filer från en dator till en annan över nätverket använder man FTP. Man startar programmet ftp och loggar sedan in med användarnamn och lösenord. Det finns även många gratisprogram som man kan hämta på Internet. Man startar ftp och loggar in som anonymous eller ftp. Som lösenord ger man av konvention sin email-adress. I exemplet nedan kopplar någon sig mot ftpservern ftp.sunet.se. example% ftp ftp.sunet.se Ett problem som man snabbt stöter på är att det kan vara hopplöst att hitta något som man letar efter. Det finns väldigt många ftpservrar. Lösning är att använda archie. Det är i princip ett program som loggar in på en väldig massa ftpservrar, kollar vad som finns och bygger upp en stor databas över innehållet. Man kan använda en sådan genom att koppla upp sig mot sidan http://www.pvv.unit.no/ftpsearch/. Förut användes telnet till en archieserver och det gick även att få sökresultat genom att skicka email till en archieserver. Archie är inget idealiskt sätt att leta efter filer, men det är bättre än inget. Gopher ------ Gopher är ett verktyg som kan läsa texter. Texter kan peka vidare på andra texter. Man slipper sådant som ljud och bilder. Gopher har i princip ersatts av WWW. WWW --- WWW står för World-Wide Web. Dokument i WWW har också länkar som bygger upp en hypertextstruktur -- mer flexibelt än en bok. Dokument kan innehålla bilder och ljud. Ett dokument kan nås med en o URI, Uniform Resource Identifier. Man talar att man vill se Tomas föreläsningsanteckningar (sic! Han sade faktiskt så, Ture!) och får se dem utan att behöva veta var de finns. Detta finns inte ännu. Istället använder man URL. o URL, Uniform Resource Locator. Ett exempel på en sådan är: http://www.lysator.liu.se/upplysning/ o http:// markerar vilket protokoll som används. Http står för HyperText Transfer Protocol. o www.lysator.liu.se/ är datornamnet. o upplysning/ är dokumentnamnet. Andra protokoll är: o ftp:// för ftp o news:// läsa news. Det är inte bra att ha en länk till någon artikel på news eftersom dessa försvinner efter ett tag. o gopher:// för gopherdokument. o telnet:// för uppkopplingar med telnet. När WWW spred sig spred sig också Internet till vanligt folk. Precis som med ftp kan det vara knepigt att hitta på WWW. Därför finns det söktjänster. Det är i princip burkar som gör vad archie gör med ftp. Den som vill söka i NetScape kan trycka på knappen Net Search. Jalal Maleki framhävde http://www.yahoo.com/. En fördel med Yahoo är att det inte är automatiserat utan att det är folk som surfar runt på nätet och klassificera WWW-sidor som läggs upp i en databas. Ett annat ställe att söka på är http://www.sunet.se/. Man får själv registrerar sin server där. LysKOM ------ Det fanns en dator på IDA som hette Linus. På Linus kördes ett konferenssystem som uppfunnits av folk på FOA och QZ för att kunna kommunicera internt. Folk på Lysator skrev i KOM. Så dog Linus. Lysatorfolket var utan KOM-system. Lysatorfolket fixade ett nytt KOM-system; LysKOM. För att starta LysKOM på ISY och Lysator startar du först emacs. Sedan skriver du M-x lyskom och anger namn och lösenord. Kent Engström berättade att det var så uppLYSningsföredragen kom till; efter diskussioner och debatter i LysKOM.