Hopp til innhold
Fagartikkel

Svitsj

En svitsj (switch) kobler sammen enheter i lokalnettverk. Svitsjer tar imot datapakker fra tilkoblede enheter og svitsjer dem videre til mottaker. Svitsjer kommer i mange varianter, med forskjellig antall nettverksporter og ulike støttede hastigheter og funksjoner.

Kort om svitsjer

En svitsj (switch) lar oss koble sammen flere kablede enheter i det samme nettverket.

Svitsjen sitter i midten mellom alle enhetene og svitsjer datapakker som enhetene ønsker å sende til hverandre.

Svitsjer har som oftest mellom 5 og 48 fysiske svitsjporter som kan brukes for å koble til allslags utstyr.

Oppsett av større nettverk

Flere svitsjer kan kobles sammen. Dette gir flere tilgjengelige svitsjporter og mulighet for å tilpasse nettverket til lokalene det er satt opp i. Dette gir stor fleksibilitet for å tilpasse nettverket til behovet, men gjør også nettverket mer komplisert å feilsøke i.

Når flere svitsjer kobles sammen, er det tradisjon for enten å bruke de første eller siste svitsportene på svitsjene til dette. Dette gjør feilsøking lettere.

Design av større nettverk med mange svitsjer er et vidstrakt emne i seg selv og ikke noe vi ser på i denne artikkelen.

Hvordan svitsjer fungerer

Svitsjen gjør svitsjing basert på MAC-adressene som datapakkene er merket med. Svitsjen sammenligner mottaker-MAC-adressen med en såkalt CAM-tabell. Denne tabellen har svitsjen selv bygd opp over kjente MAC-adresser og de fysiske svitsjportene som de er assosiert med.

Når svitsjen finner en match mellom datapakken og adresselista, vet den hvilken fysisk svitsjport datapakken skal sendes til.

De fleste svitsjer arbeider på lag 2 (datalinklaget) i TCP/IP-modellen og kalles derfor for lag 2-svitsjer. Denne modellen kan du lese mer om på siden TCP/IP-modellen (ndla.no).

Noen svitsjer kan også svitsje basert på IP-adresser. Disse svitsjene arbeider på lag 3 i TCP/IP-modellen og kalles dermed for lag 3-svitsjer.

Slike svitsjer har gjerne ekstra funksjonalitet som gir dem deler av karakteristikken og funksjonaliteten til en ruter.

Hvordan svitsjens CAM-tabell fylles ut

Når en svitsj slås på, er svitsjens CAM-tabell (Content Addressable Memory table) tom.

Svitsjen har to hovedmetoder for å skaffe seg oversikt over nettverket rundt seg og hvilke MAC-adresser som tilhører hvilke fysiske svitsjporter.

  1. Hver gang svitsjen får inn en datapakke fra en ukjent avsender, legger den avsenderens MAC-adresse og den fysiske nettverksporten som datapakken kom inn til svitsjen på, inn i CAM-tabellen. En ukjent avsender i denne sammenhengen er altså en avsender med MAC-adresse som ikke allerede er i svitsjens CAM-tabell.

  2. Hvis en datapakke kommer inn til svitsjen og svitsjen ikke gjenkjenner avsenderens MAC-adresse, vil svitsjen sende kopier av datapakken ut via alle sine fysiske porter, unntatt den som datapakken kom inn fra.

    Enheter med andre MAC-adresser vil droppe datapakken, men riktig mottaker vil sende bekreftelsesmelding i retur om at pakken kom fram. Når svitsjen får denne svarpakken, vet den hvilken fysisk svitsjport MAC-adressen kan nås via. Svitsjen sender så svarpakken til den originale avsenderen, og kommunikasjonen er fullført. Ved framtidig kommunikasjon mellom enhetene vet svitsjen hvilken fysisk port som er riktig og sender datapakken direkte til mottakeren.

Oppdatering og sletting av innhold i CAM-tabell

Hvis svitsjen mottar datapakke fra en kjent avsender som har en annen fysisk svitsjport enn tidligere, vil svitsjen oppdatere CAM-tabellen med den nyeste plasseringen. En kjent avsender er altså en avsender med en MAC-adresse som allerede ligger i CAM-tabellen.

CAM-tabeller har ofte rutiner for å fjerne gamle oppføringer som ikke har vært brukt på en stund. Hvis lagringsplassen til CAM-tabellen blir full, vil de eldste oppføringene slettes for å gi plass til nye.

Har du prøvd å skru den av og på igjen?

Svitsjer bruker CAM-tabell (Content Addressable Memory table) for å holde orden på hvilke fysiske porter datapakker skal sendes til.

Tabellen bygger svitsjen opp selv basert på tidligere datapakker som går via svitsjen. En slik løsning gjør svitsjen uavhengig av annet utstyr for å gjøre sin grunnleggende funksjon.

Ulempen er at enkelte feil, for eksempel loopback, der svitsjen blir koblet til seg selv i en løkke, og noen typer angrep, for eksempel MAC Spoofing, kan ødelegge CAM-tabellen med uriktig informasjon. Det vil gjøre at datapakker ikke kommer fram til riktig mottaker.

Ved å restarte svitsjen tømmes CAM-tabellen. Hvis den underliggende feilen eller angrepet er håndtert, vil svitsjen fungere som normalt etter dette.

Vanlig funksjonalitet på svitsjer

Ubetjente og betjente svitsjer

Svitsjer kan enten være ubetjente (unmanaged) eller betjente (managed).

At en svitsj er ubetjent, betyr at den arbeider helt på egen hånd og ikke kan justeres eller overvåkes. Dette er vanlig for små, enkle svitsjer for hjemmemarkedet og små bedrifter.

Betjente svitsjer er mer avanserte. De har egen IP-adresse som gjør det mulig å enten logge inn via et web-grensesnitt som er bygd inn i svitsjen, eller adoptere svitsjen inn til en nettverkskontroller som tar styring over svitsjen.

Betjente svitsjer er veldig vanlig i bedrifter og gir mulighet for trafikkovervåkning, sperring av spesifikke svitjsporter, oppdatering og restart av svitsjen.

POE (Power Over Ethernet)

POE er et sett med standarder som lar oss sende strøm over nettverkskabel. Dette brukes mye for å drive aksesspunkter og IP-telefoner.

Mange svitsjer har støtte for en eller flere av POE-standardene og kan sende ut strøm hvis en enhet kobles til som også støtter dette. Noen svitsjer som støtter POE, støtter det bare på noen av svitsjens porter.

VLAN (Virtual Local Area Network)

Med VLAN setter vi opp flere virtuelle LAN på et sett med fysisk utstyr. Ubetjente svitsjer vil som oftest fungere med VLAN, men alle svitsjportene vil levere alle tilgjengelige VLAN. En betjent svitsj vil kunne bestemme hvilke VLAN som skal vises på hvilke av de fysiske svitsjportene. Du kan lese mer om det på siden Virtuelt lokalnettverk (VLAN) (ndla.no).

CC BY-SA 4.0Skrevet av Tron Bårdgård.
Sist faglig oppdatert 30.09.2021