Wyk éad VI

background image

2001 © Sławomir Jeżewski Katedra Informatyki Stosowanej
PŁ.

Programowanie sieciowe

Wykład VI a

Dostęp do warstwy łącza danych

background image

Warstwowy Model Sieci ISO-OSI

(Open System Interconnection )

Warstwa fizyczna

Warstwa łącza
danych

Warstwa sieci

Warstwa
transportowa

Warstwa sesji

Warstwa prezentacji

Warstwa aplikacji

background image

ISO-OSI

background image

Warstwa łącza danych

Warstwa fizyczna

Warstwa łącza
danych

Warstwa sieci

Ramki

Pakiety

Adresy IP

Adresy

fizyczne

background image

Zadania warstwy łącza

danych

Określanie przyporządkowania

IP/FIZ

Formowanie ramek / pakietów

Kontrola poprawności odbioru

danych

Separacja warstwy sieciowej i

warstwy fizycznej

background image

Metody dostępu do

warstwy łącza danych

BPF ( BSD Packet Filter )

DLPI ( SVR4 Data Link Provider
Interface )

Interfejs SOCK_PACKET ( Linux )

background image

BPF

(BSD 4.4)

jądro systemu

Kopie wysyłanych

i odbieranych

pakietów

Warstwa

łącza

danych

BPF

IPv6

IPv4

bufo

r

Program

użytkowy

Program

użytkowy

bufo

r

filtr

filtr

przestrzeń procesów

background image

Dostęp programowy do urządzenia

filtrującego

ioctl

open /dev/bpf0 , /dev/bpf1 , .....

read/write

background image

DLPI

(Data Link provider SVR4)

jądro systemu

Warstwa

łącza

danych

IPv6

IPv4

bufmo

d

Program

użytkowy

Program

użytkowy

bufmo

d

pfmo

d

pfmo

d

przestrzeń procesów

background image

Dostęp programowy do urządzenia

filtrującego

DL_ATTACH_REQ

open /dev/le0

read/write

background image

SOCK_PACKET

(Linux)

jądro systemu

Kopie wszystkich

wysyłanych i

odbieranych

pakietów

Warstwa

łącza

danych

IPv6

IPv4

Program

użytkowy

Program

użytkowy

filtr

przestrzeń procesów

background image

Dostęp programowy

ioctl SIOCGIFFLAGS
IFF_PROMISC,

socket( AF_INET, SOCK_PACKET, htons(mode) )

read/write

ioctl SIOCSIFFLAGS

ETH_P_LOOP

0x0003 /* All packets */

ETH_P_LOOP

0x0060 /* Ethernet Loopback packet */

ETH_P_ECHO

0x0200 /* Ethernet Echo packet */

ETH_P_PUP

0x0400 /* Xerox PUP packet */

ETH_P_IP

0x0800 /* Internet Protocol packet */

ETH_P_X25

0x0805 /* CCITT X.25 */

ETH_P_ARP

0x0806 /* Address Resolution packet */

ETH_P_BPQ

0x08FF /* G8BPQ AX.25 Ethernet Packet

ETH_P_DEC

0x6000 /* DEC Assigned proto */

ETH_P_DNA_DL

0x6001 /* DEC DNA Dump/Load */

ETH_P_DNA_RC

0x6002 /* DEC DNA Remote Console */

ETH_P_DNA_RT

0x6003 /* DEC DNA Routing */

ETH_P_LAT

0x6004 /* DEC LAT */

ETH_P_DIAG

0x6005 /* DEC Diagnostics */

ETH_P_CUST

0x6006 /* DEC Customer use */

ETH_P_SCA

0x6007 /* DEC Systems Comms Arch */

ETH_P_RARP

0x8035 /* Reverse Addr Res packet */

ETH_P_ATALK

0x809B /* Appletalk DDP */

ETH_P_AARP

0x80F3 /* Appletalk AARP */

ETH_P_IPX

0x8137 /* IPX over DIX */

ETH_P_IPV6

0x86DD /* IPv6 over bluebook */

background image

2001 © Sławomir Jeżewski Katedra Informatyki Stosowanej
PŁ.

Programowanie sieciowe

Wykład II b

Rozgłaszanie i rozsyłanie grupowe

( Protokół IGMP )

Internet Group Management Protocol

background image

Rozgłaszanie

( broadcasting )

Obciążenie komputerów

Obciążenie sieci

Rozsyłanie pakietów do wszystkich komputerów w danej sieci lokalnej

background image

Adresy rozgłoszeniowe

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8

16

31

0

.

.

.

.

24

.

.

.

255

.

.

255

255

.

255

255

255

255

255

255

255

background image

Grupa rozgłoszeniowa

Def
Grupa rozgłoszeniowa to zespół komputerów

reprezentowanych jednym numerem IP

background image

Zasady rozgłaszania

grupowego

Każda stacja może należeć do jednej lub więcej grup rozgłoszeniowych

Pakiet wsłany do grupy rozgłoszeniowej trafia do wszystkich
komputerów niezależnie od przynależności do sieci fizycznej

Przynalezność do grupy rozgłoszeniowej jest dynamiczna

Do obsługi rozgłaszania grupowego mogą być dedykowane
specjalne komputery ( multicasting routers )

Rozgłaszanie jest z osobna konfigurowane dla każdego
interfejsu fizycznego w komputerze.

background image

Zasady rozgłaszania

grupowego

Rozgłaszanie grupowe jest opcją dodatkową oprogramowania IP

brak obsługi rozgłaszania grupowego w implementacji stosu IP

implementacja częściowa

pełna implementacja

background image

Adresy rozgłoszeniowe

224.0.0.0

-

239.255.255.255

224.0.0.0

-

nie przypisany

224.0.0.1

-

adres specjalny ( wszystkie komputery )

Pozostałe numery

-

Assigned Numbers RFC 790

background image

Zasady obsługi pakietów

rozsyłania grupowego

Umożliwić wysyłanie pakietów z adresem grupy D

Czas życia pakietów domyślnie musi być równy 1

Stos IP musi odrzucać te datagramy, które adresowane są do obcych grup

Rozsyłanie pakietów winno odbywać się z wykorzystaniem możliwości sieci
fizycznej

Rozgłaszanie w sieci fizycznej ( bradcast )

Rozsyłanie grupowe w sieci fizycznej ( multicast )

Rozsyłanie przez router rozgłoszeniowy

background image

Zasady obsługi pakietów

rozsyłania grupowego

Przynależność do grupy musi być dynamiczna

JoinHostGroup

LeaveHostGroup

Pakiet wysyłany do grupy musi być blokowany w lokalnej petli IP

Nie generuje się pakietów ICMP w odpowiedzi na
pakiety rozgłoszeniowe

Pakiety skierowane pod adres 224.0.0.1 nie są
transmitowane poza sieć lokalną

background image

Internet Group

Management Protocol

(IGMP)

Pozyskiwanie i uaktualnianie informacji o przynależności
do grup rozgłoszeniowych

Uaktualnianie informacji nie może odbywać się częściej
niż co 1 min

background image

Format datagramów IGMP

Suma kontrolna

V

Adres grupowy

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

10

16

31

0

T

Nie

używane

1

Wersja

1

Zapytanie o przynależność ( Membership Query)( brama)

2

Odpowiedź na zapytanie ( Membership Report ) ( host )

background image

Maszyna stanów IGMP

Nie należy do

grupy

Odpowiedź

na

zapytanie

Dołączenie do grupy

Należy do

grupy

Opuszczenie
grupy

Opuszczenie
grupy

Zapytanie
MQ
Odebrano
odpowiedź
MR

Timer

background image

recv ,recfrom, read, readv

Funkcje wejscia i wyjścia bez

blokowania

write writev send sendto

connect

accept

background image

Protokół SMTP

S M TP

U ż y tk o w n ik

S y s t e m

p li k ó w

S y s t e m

p li k ó w

U ż y tk o w n ik

background image

Komunikaty SMTP

Komunikaty mają formę łańcuchów znaków zakończonych CRLF

Znaki zdefiniowane są standardem ASCII

Znaki mają rozmiar 7 bitów

background image

Komunikaty SMTP

Ogólna postać komunikatu

<POLECENIE> <CRLF>

<POLECENIE><SPACJA><PARAMETR> <CRLF>

background image

Definicja formalna

konunikatu SMTP

<reverse-path>

::= <path>

<forward-path>

::= <path>

<path>

::= "<" [ <a-d-l> ":" ] <mailbox> ">"

<a-d-l>

::= <at-domain> | <at-domain> "," <a-d-l>

<at-domain>

::= "@" <domain>

<domain>

::= <element> | <element> "." <domain>

<element>

::= <name> | "#" <number> | "[" <dotnum> "]"

<mailbox>

::= <local-part> "@" <domain>

<local-part> ::= <dot-string> | <quoted-string>

<name>

::= <a> <ldh-str> <let-dig>

<ldh-str>

::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>

<let-dig>

::= <a> | <d>

<let-dig-hyp>

::= <a> | <d> | "-"

<dot-string> ::= <string> | <string> "." <dot-string>

<string>

::= <char> | <char> <string>

<quoted-string>

::= """ <qtext> """

<qtext>

::= "\" <x> | "\" <x> <qtext> | <q> | <q> <qtext>

background image

Definicja formalna

Komunikatu SMTP

<dotnum>

::= <snum> "." <snum> "." <snum> "." <snum>

<number>

::= <d> | <d> <number>

<CRLF>

::= <CR> <LF>

<CR>

::= znak powrotu karetki (ASCII kod 13)

<LF>

::= znak nowej linii (ASCII kod 10)

<SP>

::= znak spacji (ASCII kod 32)

<snum>

::= 1, 2, lub 3 cyfry tworzące wartość

całkowitą liczbę

decymalną z zakresu 0-255

<a> ::= znaki z zakresu A-Z i a-z

<c> ::= jakikolwiek znak ASCII 128, lecz nie znak

specjalny czy spacja.

<d> ::= cyfra 0- 9

<q> ::= jakikolwiek znak ASCII 128 lecz nie CR, LF, ", \

<x> ::= znak ASCII 128

<special>

::= "<" | ">" | "(" | ")" | "[" | "]" | "\" | "."

| "," | ";" | ":" | "@" """ | znaki kontrolne 0-31 i 127

background image

Komenda SMTP

Znaczenie

Parametry

HELLO

Identyfikacja nadawcy SMTP

Nazwa stacji wysyłającej wiadomość

MAIL

Komenda inicjalizująca transmisję

wiadomości pocztowej

Adresy stacji leżące na drodze zwrotnej

wiadomości

SEND

Komenda inicjalizująca dostarczenie danych

bezpośrednio do terminala odbiorcy

SOML

(SEND OR MAIL)

Komenda inicjalizująca dostarczenie danych

bezpośrednio do terminala odbiorcy lub do

jego skrzynki pocztowej

SAML

(SEND AND MAIL )

Komenda inicjalizująca dostarczenie danych

bezpośrednio do terminala odbiorcy i do jego

skrzynki pocztowej

RCPT

Komenda określająca odbiorcę wiadomości skrzynka pocztowa odbiorcy wiadomości,

oraz adresy stacji leżących na drodze do

adresata

DATA

Komenda inicjalizująca wysyłanie danych z

wiadomości.

-

RSET

Odwołuje akcje związane z wysłaniem

wiadomości

-

VRFY

Weryfikuje poprawność adresu odbiorcy

Skrzynka pocztowa adresata

EXPN

Rozwija nazwę listy mailowej podając

adresy wszystkich należących do niej

użytkowników

Nazwa listy dyskusyjnej

HELP

Podaje pomoc ogólną lub na temat danego

polecenia

Nazwa polecenia

NOOP

Nic nie rób

QUIT

Zamyka połączenie

TURN

Zmienia role nadawcy i odbiorcy

wiadomości

background image

Format odpowiedzi SMTP

1yz- pozytywna odpowiedź przed przystąpieniem do działania

2yz- pozytywna odpowiedź po zakończeniu działania

3yz- pozytywna odpowiedź w trakcie działania

4yz- odpowiedź negatywna - wynikająca z warunków
chwilowych

5yz- odpowiedź negatywna permanentnie

<XXX><SPACJA><OPIS><CRLF>

background image

Format odpowiedzi SMTP

500 Syntax error, command unrecognized

501 Syntax error in parameters or arguments

502 Command not implemented

503 Bad sequence of commands

504 Command parameter not implemented

211 System status, or system help reply

214 Help message

220 <domain> Service ready

221 <domain> Service closing transmission channel

421 <domain> Service not available,


Document Outline


Wyszukiwarka

Podobne podstrony:
andragogika - wyk+éad VI-edukacja senior+-w, andragogika
Wyk+éad VI - Legitymizacja W+éadzy
EIE Wyk ad VI 04 2008
Wyk ad VI D ug publiczny 2007 6 maj
Biologia kom rki wyk éad VI
wyk ad VI - tablica 1, Zarządzanie WSB Poznań (licencjat), II semestr, Podstawy finansów - dr Janina
monitoring środowiska, Wyk+éad VI
Wyk ad 5 6(1)
Wyk ad II
Tkanki wyk ad 1
Ekonomika Transportu wyk+ad 1
Wyk ad Fizyka 2
Wyk ad 04
Na wyk ad id 312279 Nieznany

więcej podobnych podstron