Studij FER-2 Studijski program Računarstvo VI semestar Modul Telekomunikacije i informatika Predmet Lokalne mreže (preporučeni izborni predmet modula) SOFTVERSKO UPRAVLJANJE MREŽOM Marin Vukšić Željko Ilić 1 od 21
Download ReportTranscript Studij FER-2 Studijski program Računarstvo VI semestar Modul Telekomunikacije i informatika Predmet Lokalne mreže (preporučeni izborni predmet modula) SOFTVERSKO UPRAVLJANJE MREŽOM Marin Vukšić Željko Ilić 1 od 21
Studij FER-2 Studijski program Računarstvo VI semestar Modul Telekomunikacije i informatika Predmet Lokalne mreže (preporučeni izborni predmet modula) SOFTVERSKO UPRAVLJANJE MREŽOM Marin Vukšić Željko Ilić 1 od 21 Koncept SDN (engl. Software Defined Networking) Razvijen na sveučilištu Stanford 2008 godine. Glavni predstavnici Zamišljen za eksperimentalne i istraživačke svrhe na sveučilišnim kompleksima Odstupanje od tradicionalne mrežne arhitekture Nick McKeown (Stanford) Martin Casado (Stanford) Scott Shenker (Berkeley) Logiku usmjeravanja paketa određuje upravljač (engl. controller) Organizacija ONF (engl. Open Networking Foundation) 2011. godine preuzima standard SDN za daljnju nadogradnju 2 od 21 Zahtjevi nove mrežne arhitekture Mehanizmi za kvalitetno upravljanje i nadzor mreže Bolje performanse mrežnog prometa Veća propusnost mreže Brže procesiranje i obrada podataka Dodavanje pravila kod korištenje mreže Upravljanje (engl. management) mrežom je lakše od upravljanje pojedinačnim uređajima Centralizirani nadzor mreže Veća otpornost i brza detekcija kvarova Pravila pristupa (engl. access control lists, ACL) Kvaliteta usluge (engl. Quality of Service, QoS) Sigurnost komunikacije Nezavisnost proizvođača Proizvođači mrežnih uređaja ne definiraju vlastiti način konfiguriranja 3 od 21 Arhitektura SDN-a Definicija SDN-a: Troslojna mrežna arhitektura SDN je fizičko razdvajanje upravljačke ravnine (engl. control plane) od podatkovne ravnine (engl. forwarding plane), gdje pritom upravljačka ravnina upravlja s više uređaja. Aplikacijski sloj Upravljački sloj Fizički sloj Standardno komunikacijsko sučelje između upravljača i komutatora APPLICATION LAYER Applications API CONTROL LAYER SDN Control Software API API Network Services protokol OpenFlow INFRASTRUCTURE LAYER 4 od 21 Dosadašnja mrežna arhitektura Closed App App App Operating System App Specialized Packet Forwarding Hardware App App App App Operating System Specialized Packet Forwarding Hardware App Operating System App Specialized Packet Forwarding Hardware App App Operating System App App App Specialized Packet Forwarding Hardware Operating System Specialized Packet Forwarding Hardware 5 od 21 Prelazak na SDN App App App Network Operating System App App App Operating System App Specialized Packet Forwarding Hardware App App App App Operating System Specialized Packet Forwarding Hardware App Operating System App Specialized Packet Forwarding Hardware App App Operating System App App App Specialized Packet Forwarding Hardware Operating System Specialized Packet Forwarding Hardware 6 od 21 Doprinos odvajanja podatkovne od kontrolne od ravnine Operacijski sustav se izdvaja izvan uređaja i smješta na logičku centraliziranu lokaciju Bolji pogled na topologiju mreže Doprinosi boljem donošenju odluka usmjeravanja i prosljeđivanja Mogućnost bolje iskoristivost mrežnih resursa Jednostavnost u otklanjanju kvarova (engl. troubleshooting) Softver vs Hardver Upravljač je nadležan za rad operacijskog sustava a ne mrežni uređaji Softver se vremenski brže razvija Ugrađivanje i nadogradnja softvera je brža i jednostavnija jer se vrši na upravljaču Konfiguraciju uređaja izvodi softver Brža konvergencija mreže Brže procesiranje paketa 7 od 21 Virtualizacija mreže Apstrakcija mreže Predstavlja samo bitne značajke pri tome zanemarujući pozadinske mehanizme Ne prikazuje implementacijske detalje (npr vlan, ACL, IP subnet) Iz fizičke topologije dobiva se logička (virtualna) topologija Olakšava se implementacija aplikacija 8 od 21 OpenFlow komutator Tehnološka izvedba komutatora hybridni (OpenFlow enabled) standardni (OpenFlow only) Razine arhitekture OpenFlow Switch SW Secure Channel HW Flow Table OpenFlow Protocol Controller Upravljačka ravnina (engl. control plane) Podatkovna ravnina (engl. data plane) 9 od 21 Tablica tokova Zaglavlje (engl. Header) Brojači (engl. Counters) Usporedba (engl. match) dolaznog paketa s poljima u zaglavlju tablice Skupljanje statistika za određene portove ili tokove Akcije (engl. Actions) Način na koji će se procesirati dolazni paket (npr. prosljeđivanje, prosljeđivanje upravljaču, odbacivanje) Header Fields Counters Ethernet Actions VLAN IP TCP/UDP Ingress Port SA DA Type VID Prority SA DA Protocol ToS Src port Dst port Redak u tablici tokova (engl. Flow Entry) 10 od 21 Dijagram toka Ovisno o uspješnosti pronalaska retka u tablici izvršava se pripadajuća akcija U slučaju ne pronalaska odgovarajućeg toka ovisno o implementaciji komutatora paket se odbacuje ili prosljeđuje nadležnom upravljaču Packet in from network Parse header fields Match table 0? Yes Apply actions No Match table N? Yes No - send to controller - drop 11 od 21 Primjer određivanja toka Port 0/2 00:0F:EA:91:04:08 00-14-22-01-23-45 192.168.4.1 192.168.1.5 87 ... OpenFlow switch Flow Table Ingress port MAC src MAC dst IP Src IP Dest TCP dport ... Instruction Port 0/1 * * * * * ... Port 1/1 * * * * 192.168.1.0/24 * ... Port 1/2 * * * * * 25 ... drop * * 00-B0-D0-86-BB-F7 * * * ... Port 0/1 * * * * * * ... controller Port 0/4 00:1B:63:84:45:E6 00:1C:B3:09:85:15 192.168.4.2 192.168.2.1 33 ... 12 od 21 Unaprjeđenje tablice tokova Više tablica unutar jednog komutatora Prijelaz između tablica naredbom „go to” Mogućnost boljeg projektiranja tokova Unaprjeđenje akcija OpenFlow Switch Packet In Ingress port Packet Packet Table 0 Table 1 Table n Action Set Action Set Packet Out Execute Action Set komutator OpenFlow v1.3.4 13 od 21 Protokol OpenFlow Sučelje između OpenFlow komutatora i upravljača Dolazni promet od upravljača smatra se kao lokalni Osigurati sigurnu konekciju na TCP vratima 6633 Zaglavlje protokola Verzija: prikaz verzije protokola Tip poruke: vrsta poruke koja se prenosi Duljina: ukupna duljina poruke XID: ID transakcije paketa Version Type Lenght XID 8 bita 8 bita 16 bita 32 bita OpenFlow Zaglavlje 14 od 21 Vrste poruka Poruke inicirane od strane upravljača Sinkrone poruke Poruke usmjerene komutatoru Features, Configuration, Modify-State, Read State, Send packets, Barrer request, Barrer Reply Sinkronizacija upravljača i komutatora Hello, Echo Request, Echo Reply Asinkrone poruke Inicirane od strane komutatora Packet in, Flow-removal, Port-status, Error 15 od 21 Upravljač Logički centraliziran u mreži Nadležan za konfiguracija tablica tokova Re-aktivan način rada – ažuriranje tablice vrši se prilikom dolaska paketa Pro-aktivan način rada – ažuriranje tablice prije uspostave podatkovnog prometa FlowVisor Upravljač 1 Posrednik između upravljača i komutatora Izolacija dijelova mreže za višestruke upravljače Pripada sloju virtualizacije Upravljač 2 FlowVisor FlowVisor FlowVisor Upravljač 3 OpenFlow komutator Upravljač 4 OpenFlow komutator OpenFlow komutator 16 od 21 Aplikacije Dodatna nadogradnja upravljačkih uređaja Izvedbe aplikacija Algoritam najbližeg puta Balansiranje prometa Sigurnosna kontrola s provjerom pristupa – firewall Vizualizacija statistika komutatora 17 od 21 Prednosti SDN-a Uvodi se virtualizacija mreže - apstrakcija Reducira se korištenja protokola IP Brže procesiranje paketa u mrežnim čvorovima Jednostavno upravljanje i nadzor mreže doprinosi boljoj iskoristivosti mreže Kod izmjene topologije mreža brzo konvergira Jednostavna nadogradnja kontrolnih uređaja Primjena: računarstvo u oblaku (engl. Cloud computing), financijske usluge – bankarstvo, Web 2.0 18 od 21 Literatura Open Networking Foundation SDX Central Autori: Thomas D. Nadeau, Ken Gray Network Innovation through OpenFlow and SDN: Principles and Design https://www.sdxcentral.com/ SDN: Software Defined Networks https://www.opennetworking.org/ Autor: Fei Hu Software Defined Networking: Design and Deployment Autori: Patricia A. Morreale and James M. Anderson 19 od 21 Dodatak (upravljači, 1/2): Floodlight 20 od 21 Dodatak (upravljači, 2/2): OpenDaylight 21 od 21