Komunikacije v Avtomatiki Vaje, Ura 1

Transcription

Komunikacije v Avtomatiki Vaje, Ura 1
Laboratorij za strojni vid,
Fakulteta za elektrotehniko, Univerza v Ljubljani
Komunikacije v Avtomatiki
Vaje, Ura 1
Matej Kristan
<[email protected]>
Komunikacije v Avtomatiki
 Ime: Matej Kristan
 Docent na FE in raziskovalec na FRI.
 Kje me najdete: Laboratorij za strojni vid (4M nadstropje, FE).
 Spletna stran:
 FE: http://vision.fe.uni-lj.si/people/MatejK.html (google search)
 FRI: http://vicos.fri.uni-lj.si/matejk/
 Elektronski poštni naslov:
 [email protected]
 Področje:
 Statistično modeliranje procesov.
 Razpoznavanje vzorcev.
 Računalniški vid.
 Kognitivni agenti (AI).
Namen in Vsebina Vaj:
1. Pregled nalog, ki se pojavljajo na pisnem izpitu in utrditev
snovi, ki jo obravnavate na predavanjih.
2. Obvezen del vaj je tudi seminarska naloga:

Seminarske naloge se bodo nanašale na omrežne tehnologije.

Razdelitev tem: 25. 10.

Po treh tednih (8.11.) bo sledila kontrolna točka.

Datum za oddajo seminarske pred novim letom (23.12., 24:00).

Praktični del seminarske naloge bo preizkus z Wiresharkom.
3. Obvezen uspešen zagovor seminarske je predpogoj
za pisni izpit.

Prezentacije, datumi in pomembnejše informacije na spletni
strani predmeta: http://vision.fe.uni-lj.si/classes/KA-vaje/

Blok ura?
Literatura
1. Dve skripti prof Kovačiča na spletni strani predmeta
2. Interaktivni material na spletni strani predmeta (pride)
3. Computer Networking – A top-down approach
4. Computer networks
5. Wikipedia
Vsebina današnjih vaj:
1. Ponovili bomo koncept slojnosti komunikacijskega omrežja.
2. Ogledali si bomo delo s programom Wireshark.
3. Na primeru TCP/IP modela in slojnosti bomo demonstrirali
funkcionalnost Wiresharka.
4. Domača naloga iz slojnosti omrežja.
Komunikacijski sloji: KONCEPT?
 Splošni problem: Kako komunicirati med procesi na različnih
napravah, ne glede na, npr., operacijski sistem in strojno
Opremo?
 V 80’ model za računalniška omrežja, ki temelji na Slojih.
angleško
francosko
angleško/
nizozemsko
francosko/
nizozemsko
nizozemsko
nizozemsko
Vir slike: Tanenbaum, “Computer Networks”
Komunikacijski sloji: TCP/IP
aplikacija
aplikacija
Izvirno vozlišče
Končno vozlišče
Uporabniški sloj
(Application layer)
Uporabniški sloj
(Application layer)
Prenosni sloj
(Transport layer)
Prenosni sloj
(Transport layer)
Omrežni sloj
(Network layer)
Mrežni sloj
(Network layer)
Podomrežni sloj
(Link layer)
Podomrežni sloj
(Link layer)
TCP/IP: Uporabniški sloj
 Omrežne aplikacije
aplikacija
Izvirno vozlišče
Uporabniški sloj
(Application layer)
 Nudi dostop aplikacijam do omrežja
 Primeri protokolov:
 HTTP, FTP, SMTP, DNS, itd
 Primeri aplikacij:
 Telnet
Prenosni sloj
(Transport layer)
Omrežni sloj
(Internet layer)
Podomrežni sloj
(Link layer)
 Virtualni terminal
 Podatke, ki se pretakajo imenujemo:
Sporočila.
 Predaja in prejema “sporočila” s
prenosnega sloja.
TCP/IP: Prenosni sloj
aplikacija
Izvirno vozlišče
Uporabniški sloj
(Application layer)
Prenosni sloj
(Transport layer)
Omrežni sloj
(Internet layer)
Podomrežni sloj
(Link layer)
 Prenaša sporočila z aplikacijskega
sloja med končnimi točkami.
 Podpira dva protokola:
 TCP (connection oriented)
 sporočila razseka v manjše
“segmente”, skrbi za pretok
podatkov (congestion control)
 UDP (connectionless)
 Paket transportnega sloja
imenujemo: Segment
TCP/IP: Omrežni sloj
aplikacija
Izvirno vozlišče
Uporabniški sloj
(Application layer)
Prenosni sloj
(Transport layer)
Omrežni sloj
(Internet layer)
Podomrežni sloj
(Link layer)
 Skrbi za prenos omrežnih paketov
z ene naprave do druge.
 Omrežni paket imenujemo:
Datagram
 Prenosni sloj v izvornem vozlišču
odda segment in mrežni naslov
ponornega vozlišča.
 Omrežni sloj skrbi, da segment
pride od ponornega vozlišča.
 Protokol IP: definira polja v
datagramu, in kako končni sistemi
in routerji reagirajo na ta polja.
TCP/IP: Podomrežni sloj
aplikacija
Izvirno vozlišče
Uporabniški sloj
(Application layer)
Prenosni sloj
(Transport layer)
Omrežni sloj
(Internet layer)
 Pozor: omrežni sloj skrbi za pravilno
pot datagramov po omrežju.
 Podomrežni sloj skrbi za prenos
paketa od enega vozlišča do
njegovega soseda vzdolž poti.
 Omrežni sloj odda datagram
podomrežnemu sloju, ta pa ga
posreduje naslednjemu vozlišču. To
vozlišče nato odda datagram lastnemu
omrežnemu sloju.
 Primeri:
 Wifi
 Ethernet
Podomrežni sloj
(Link layer)
 Podomrežni paket imenujemo: Okvir
Koncept slojev pri TCP/IP naslavljanju
 AplikacijaX1 na Laptopu1 želi poslati podatke
AplikacijiY2 na Laptopu2.
AplikacijaX1
AplikacijaX2
…
Laptop1
PortX1
PortX2
…
IME RAČUNALNIKA X
IP:192.168.2.101
IME ETHERNET PRIKLJ. X
MAC: 00:A0:C9:14:C8:29
Appl.sloj
Laptop2
Pren. sloj
Omrež. sloj
Podmrež.
sloj
AplikacijaY1
AplikacijaY2
…
PortY1
PortY2
…
IME RAČUNALNIKA Y
IP:192.168.2.150
IME ETHERNET PRIKLJ. Y
MAC: 01:23:45:67:89:ab
Enkapsulacija
sporočilo
segment
M
Ht
M
datagram Hn Ht
M
okvir
Hl Hn Ht
M
application
transport
network
link
physical
Izvir
link
physical
switch
Ponor
M
Ht
M
Hn Ht
Hl Hn Ht
M
M
application
transport
network
link
physical
Hn Ht
Hl Hn Ht
M
M
network
link
physical
Hn Ht
M
router
vir: Kurose & Ross: “Computer networks – A top-down approach”
Kaj je Wireshark?
 Standardni analizator mrežnih protokolov.
 Precej razširjen v industriji (pri uporabi znanih, kakor tudi
razvoju novih protokolov).
 Omogoča zajem podatkov in analizo v realnem času.
 Operacijski sistemi: Windows, Linux, OS X, itd.
 Download: http://www.wireshark.org
Kaj je Wireshark?
IP:212.235.186.174
OS
vmesnik
IP:192.168.2.101
kopira
Kaj je Wireshark?
(grafični vmesnik)
Komandna vrstica
Izpis paketov
Glava izbranega
paketa po slojih
Vsebina izbranega
paketa v
hex in ASCII
Primer sledenja protokolu HTTP:
http://vision.fe.uni-lj.si/people/MatejK.html
Strežnik
Klient
HTTP
GET ...
Port:2728
HTTP
Port:80
HTTP/1.1.200 OK...
http://vision.fe.uni-lj.si
Kaj je Wireshark?
(ovojnice)
4.
HTTP Application lyr. (sporočilo)
3.
HTTP (TCP segment, port)
2.
HTTP
1.
HTTP
Transport lyr.
Internet lyr.
(IP datagram, naslov IP)
Link/Phy lyr.
(okvir, naslov MAC)
Začetni koraki z Wiresharkom
1. Nastavi vmesnik (npr., wireless) in zaženi prisluškovanje.
2. Nastavi filter za prikazovanje paketov določenega tipa.
3. Izberi pogovor, ki mu želiš slediti.
1
2
3
Začetni koraki podrobneje
1. Izberi Network adapter v “Capture->Interfaces” in poženi
“Start”.
 Za nastavitve izberi “Capture->Options”.
 Izberi kartico pod “Interface”.
 Nastavite “Link-layer header type” na “Ethernet”.
 Če paketkov ne vidite, poskusite spremeniti “Capture packets in
promiscuous mode” na “neodkljukano”.
 “Capture filter” naj bo prazen.
 Poženi s klikom na “Start”.
2. Filter lahko nastavljate preko gumba “Expression”, oziroma
ga resetirate s klikom na gumb “Clear”.
3. Če želite slediti nekemu pogovoru, se postavite na vrstico
v glavnem oknu, kliknite desni gumb na miški in izberite
“Follow TCP stream”. Ne pozabite pritisniti “Clear”, ko želite
nadaljevati z delom!
Primer priklopa na ftp strežnik:
Desni gumb na miški -> Follow TCP stream
Več o programu Wireshark
 Kje dobiti pomoč: Na internetu je mnogo pisne
dokumentacije o uporabi Wiresharka.
 Za kratek uvod priporočam:
http://openmaniak.com/wireshark.php
 Dodatna dokumentacija:
 http://wiki.wireshark.org
 Google search: “wireshark tutorial”
 Wikipedia
 http://wheelersoftware.com/articles/wireshark-tutorial.html
 Razširjena dokumentacija o Wiresharku na matični spletni
strani.
Domača naloga z Wireshark
 Naložite si Wireshark
 Izberite mrežno kartico
 Preko internetnega brskalnika se povežite na naslov:
http://vision.fe.uni-lj.si/classes/KA-vaje/index.html
(ne pozabite pred povezavo izbrisati predpomnilnik v brskalniku – Firefox:
Tools->Clear recent histroy->“cache”)

Poiščite začetek pogovora s http protokolom (uporabite filter)

Izberite “Follow TCP Stream”

Odgovorite na vprašanja:
 Kakšen je vaš IP naslov?
 Kakšen je ponorni IP naslov?
 Katera verzija http protokola teče na strežniku?
 Kdaj je bil dokument “index.html” nazadnje modificiran?
 Strežnik posreduje brskalniku več sporočil. Kolikšna je velikost prvega
sporočila (ne segmenta), ki vsebuje spletno stran (html) brez slik?
Domača naloga z Wireshark
 Domačo nalogo izvedite, odgovore napišite na list in mi
pošljite po elektronski pošti do polnoči v nedeljo (24:00).
Kasnejših oddaj ne bom upošteval. Predlogo v MSWordu
najdete na spletni strani predmeta.
 Naloga bo vplivala na vašo končno oceno vaj: 10% .
Konec.
 Hvala.