diff --git a/.github/workflows/pandoc.yml b/.github/workflows/pandoc.yml index 3c8a1d2..11c855f 100644 --- a/.github/workflows/pandoc.yml +++ b/.github/workflows/pandoc.yml @@ -14,28 +14,28 @@ jobs: - run: | mkdir .old && rsync -vr ./* .old/ --exclude .old && - awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/DBS/README.md > DBS/README.md && - awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/SWE/README.md > SWE/README.md && - awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/PRO/README.md > PRO/README.md && - awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/RES/README.md > RES/README.md && - awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/NET/README.md > NET/README.md + awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/DBS-DORENDORF/README.md > DBS-DORENDORF/README.md && + awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/SWE-KASCHE/README.md > SWE-KASCHE/README.md && + awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/PRO-KASCHE/README.md > PRO-KASCHE/README.md && + awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/RES-GUENTHER/README.md > RES-GUENTHER/README.md && + awk '/!\[/{gsub(//,"}")};{gsub("","\\pagebreak")};{gsub("","\\newpage")};{gsub("","\\clearpage")};{gsub("","...")};{print}' .old/NET-FELDMANN/README.md > NET-FELDMANN/README.md - run: | mkdir output - - uses: docker://rstropek/pandoc-latex:latest # generate DBS pdf + - uses: docker://rstropek/pandoc-latex:latest # generate DBS-DORENDORF pdf with: - args: --output=output/DBS.pdf --resource-path=DBS/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose DBS/README.md - - uses: docker://rstropek/pandoc-latex:latest # generate SWE pdf + args: --output=output/DBS-DORENDORF.pdf --resource-path=DBS-DORENDORF/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose DBS-DORENDORF/README.md + - uses: docker://rstropek/pandoc-latex:latest # generate SWE-KASCHE pdf with: - args: --output=output/SWE.pdf --resource-path=SWE/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose SWE/README.md - - uses: docker://rstropek/pandoc-latex:latest # generate PRO pdf + args: --output=output/SWE-KASCHE.pdf --resource-path=SWE-KASCHE/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose SWE-KASCHE/README.md + - uses: docker://rstropek/pandoc-latex:latest # generate PRO-KASCHE pdf with: - args: --output=output/PRO.pdf --resource-path=PRO/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose PRO/README.md + args: --output=output/PRO-KASCHE.pdf --resource-path=PRO-KASCHE/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose PRO-KASCHE/README.md - uses: docker://rstropek/pandoc-latex:latest # generate RES pdf with: - args: --output=output/RES.pdf --resource-path=RES/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose RES/README.md - - uses: docker://rstropek/pandoc-latex:latest # generate NET pdf + args: --output=output/RES-GUENTHER.pdf --resource-path=RES-GUENTHER/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose RES-GUENTHER/README.md + - uses: docker://rstropek/pandoc-latex:latest # generate NET-FELDMANN pdf with: - args: --output=output/NET.pdf --resource-path=NET/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose NET/README.md + args: --output=output/NET-FELDMANN.pdf --resource-path=NET-FELDMANN/ --template https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template/v1.4.0/eisvogel.tex --pdf-engine=xelatex --listings -f markdown+raw_tex --verbose NET-FELDMANN/README.md - uses: actions/upload-artifact@master # upload pdfs as an artifact with: name: output @@ -47,7 +47,7 @@ jobs: name: PDFs body: Automated release gzip: false - files: output/DBS.pdf + files: output/DBS-DORENDORF.pdf allow_override: true - uses: meeDamian/github-release@2.0 # override release to attach another pdf with: @@ -56,7 +56,7 @@ jobs: name: PDFs body: Automated release gzip: false - files: output/PRO.pdf + files: output/PRO-KASCHE.pdf allow_override: true - uses: meeDamian/github-release@2.0 # override release to attach another pdf with: @@ -65,7 +65,7 @@ jobs: name: PDFs body: Automated release gzip: false - files: output/SWE.pdf + files: output/SWE-KASCHE.pdf allow_override: true - uses: meeDamian/github-release@2.0 # override release to attach another pdf with: @@ -74,7 +74,7 @@ jobs: name: PDFs body: Automated release gzip: false - files: output/NET.pdf + files: output/RES-GUENTHER.pdf allow_override: true - uses: meeDamian/github-release@2.0 # override release to attach another pdf with: @@ -83,5 +83,5 @@ jobs: name: PDFs body: Automated release gzip: false - files: output/NET.pdf + files: output/NET-FELDMANN.pdf allow_override: true diff --git a/.github/workflows/toc.yml b/.github/workflows/toc.yml index 254e686..b8cd55c 100644 --- a/.github/workflows/toc.yml +++ b/.github/workflows/toc.yml @@ -11,4 +11,4 @@ jobs: # Git commit name. COMMIT_NAME: "TOCGEN" CREATE_PR: false - TARGET_PATHS: "./DBS/README.md, ./RES/README.md, ./PRO/README.md, ./SWE/README.md, ./NET/README.md" + TARGET_PATHS: "./DBS-DORENDORF/**README.md, ./RES-GUENTHER/**README.md, ./PRO-KASCHE/**README.md, ./SWE-KASCHE/**README.md, ./NET-FELDMANN/**README.md" diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5271fcd --- /dev/null +++ b/.gitignore @@ -0,0 +1,47 @@ +# ignore everything by default ################################################# + +** + +# root-level README ############################################################ + +!/README.md + +# github workflows ############################################################# + +!/.github/ +!/.github/workflows +!/.github/workflows/*.yml + +# modul folders ################################################################ + +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/ +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/README.md + +# appendix folder ############################################################## + +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/appendix +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/appendix/*.md +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/appendix/assets/ +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/appendix/assets/*.svg +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/appendix/assets/*.png +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/appendix/assets/*.jpg + +# assets folder ################################################################ + +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/assets +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/assets/*.svg +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/assets/*.png +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/assets/*.jpg + +# extras folder ################################################################ + +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra/**/ +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra/**/*.md +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra/**/*.pdf +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra/**/*.svg +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra/**/*.png +!/[A-Z]*[A-Z]-[A-Z]*[A-Z]/extra/**/*.jpg + +# just in case ################################################################# +!.gitignore diff --git a/DBS/README.md b/DBS-DORENDORF/README.md similarity index 98% rename from DBS/README.md rename to DBS-DORENDORF/README.md index 0c98d2f..ac37add 100644 --- a/DBS/README.md +++ b/DBS-DORENDORF/README.md @@ -58,7 +58,7 @@ festen Integrationsvorschriften (Zuordnung zu Objekt- und Beziehungstypen) und O - **Schema:** formalisierte Darstellung des Modells (grafisch oder normalsprachlich) nach bestimmten Vorschriften - Schema-Mapping: Abbilden von Objekten eines höheren Schemas auf ein tieferes Schema - grafisch werden Schemata üblicherweise mittels Entity Relationship Model (ERM) dargestellt: - - ![Beispiel-ERM: Menschen sind Halter von Fahrzeugen](resources/erm-bsp.png) + - ![Beispiel-ERM: Menschen sind Halter von Fahrzeugen](assets/erm-bsp.png) - Leseregel für ERM: von links nach rechts und oben nach unten, sodass ein sinnvoller Satz gebildet werden kann ### Vorteile von Datenbanken @@ -180,7 +180,7 @@ $$R \subset A \times B$$ - **Beziehungstypen:** Verallgemeinerung von Beziehungen zwischen Objekten (Entitäten) - **Datenintegrität:** "Makelosigkeit" der Daten -![zusätzliche Begriffe aus dem Video](resources/db_begriffe_screenshot.png) +![zusätzliche Begriffe aus dem Video](assets/db_begriffe_screenshot.png) ### Operationen diff --git a/DBS/praktikum/resources/ERD_Bestandteile.png b/DBS-DORENDORF/appendix/assets/ERD_Bestandteile.png similarity index 100% rename from DBS/praktikum/resources/ERD_Bestandteile.png rename to DBS-DORENDORF/appendix/assets/ERD_Bestandteile.png diff --git a/DBS/praktikum/resources/ERD_Bestandteile.svg b/DBS-DORENDORF/appendix/assets/ERD_Bestandteile.svg similarity index 100% rename from DBS/praktikum/resources/ERD_Bestandteile.svg rename to DBS-DORENDORF/appendix/assets/ERD_Bestandteile.svg diff --git a/DBS/praktikum/resources/constraints.png b/DBS-DORENDORF/appendix/assets/constraints.png similarity index 100% rename from DBS/praktikum/resources/constraints.png rename to DBS-DORENDORF/appendix/assets/constraints.png diff --git a/DBS/praktikum/resources/joins.png b/DBS-DORENDORF/appendix/assets/joins.png similarity index 100% rename from DBS/praktikum/resources/joins.png rename to DBS-DORENDORF/appendix/assets/joins.png diff --git a/DBS/praktikum/resources/unternehmenERD.png b/DBS-DORENDORF/appendix/assets/unternehmenERD.png similarity index 100% rename from DBS/praktikum/resources/unternehmenERD.png rename to DBS-DORENDORF/appendix/assets/unternehmenERD.png diff --git a/DBS/praktikum/README.md b/DBS-DORENDORF/appendix/praktikum.md similarity index 99% rename from DBS/praktikum/README.md rename to DBS-DORENDORF/appendix/praktikum.md index 423fe8a..18af1f9 100644 --- a/DBS/praktikum/README.md +++ b/DBS-DORENDORF/appendix/praktikum.md @@ -84,11 +84,11 @@ Info-Seite -> https://docs.microsoft.com/de-de/sql/ssms/download-sql-server-mana Die Bestandteile: -![Bestandteile eines ERD](resources/ERD_Bestandteile.png) +![Bestandteile eines ERD](assets/ERD_Bestandteile.png) Beispiel-ERD: -![Beispiel-ERD](resources/unternehmenERD.png) +![Beispiel-ERD](assets/unternehmenERD.png) ## Tabellenschema @@ -110,7 +110,7 @@ Beispiel-ERD: | höchstens eins | optionale Beziehung, ?:1 | | keins oder eins oder viele | optionale Beziehung, ?:n | -![Arten von Constraints](resources/constraints.png) +![Arten von Constraints](assets/constraints.png) - im Zweifelsfall das flexiblere verwenden, für den Fall, dass sich in der Zukunft die Anforderungen ändern @@ -441,7 +441,7 @@ GROUP BY autor.name, autor.Vorname HAVING COUNT(*) > 1; - Vereinigung von Abfragen -![Übersicht von Joins](./resources/joins.png) +![Übersicht von Joins](./assets/joins.png) ```sql SELECT titel, name FROM buch, verlag WHERE buch.verlag_id = verlag.id; diff --git a/DBS/resources/db_begriffe_screenshot.png b/DBS-DORENDORF/assets/db_begriffe_screenshot.png similarity index 100% rename from DBS/resources/db_begriffe_screenshot.png rename to DBS-DORENDORF/assets/db_begriffe_screenshot.png diff --git a/DBS/resources/erm-bsp.png b/DBS-DORENDORF/assets/erm-bsp.png similarity index 100% rename from DBS/resources/erm-bsp.png rename to DBS-DORENDORF/assets/erm-bsp.png diff --git a/DBS/resources/erm-bsp.svg b/DBS-DORENDORF/assets/erm-bsp.svg similarity index 100% rename from DBS/resources/erm-bsp.svg rename to DBS-DORENDORF/assets/erm-bsp.svg diff --git a/DBS/MATERIALS/Skript.pdf b/DBS/MATERIALS/Skript.pdf deleted file mode 100644 index 3ca2949..0000000 Binary files a/DBS/MATERIALS/Skript.pdf and /dev/null differ diff --git "a/DBS/praktikum/MATERIALS/Pr\303\244siERD_Tabellen_PIA19.pdf" "b/DBS/praktikum/MATERIALS/Pr\303\244siERD_Tabellen_PIA19.pdf" deleted file mode 100644 index 2cbafbc..0000000 Binary files "a/DBS/praktikum/MATERIALS/Pr\303\244siERD_Tabellen_PIA19.pdf" and /dev/null differ diff --git a/NET/README.md b/NET-FELDMANN/README.md similarity index 95% rename from NET/README.md rename to NET-FELDMANN/README.md index 21ec405..4f6fdeb 100644 --- a/NET/README.md +++ b/NET-FELDMANN/README.md @@ -212,7 +212,7 @@ Rechnernetze - Grundlagen ### Kommunikationsszenario -![Network Interface Card](resources/nic.png) +![Network Interface Card](assets/nic.png) Bei Abruf einer Website durch `Host A` von `Server A` sind vielfältige Technologien zur Realisierung des Szenarios erforderlich. @@ -265,7 +265,7 @@ IETF-Arbeitsgruppen sind einem von 7 Bereichen (Areas) zugeordnet: #### ISO/OSI Referenzmodell -![ISO/OSI Referenzmodell](resources/iso-osi.png) +![ISO/OSI Referenzmodell](assets/iso-osi.png) - **Anwendungsschicht:** Durch anwendungsspezifische Protokolle verwendet - **Darstellungsschicht:** Umwandlung von Daten in unabhängiges Format @@ -279,18 +279,18 @@ IETF-Arbeitsgruppen sind einem von 7 Bereichen (Areas) zugeordnet: Integriert das Referenzmodell unter Verwendung von vier Schichten: -![TCP/IP als Ableitung des ISO/OSI Referenzmodells](resources/tcpip.png) +![TCP/IP als Ableitung des ISO/OSI Referenzmodells](assets/tcpip.png) - **Anwendungsschicht:** Umfasst obere drei Schichten des OSI-Modells, weitere Unterteilung obliegt Anwendungsprotokoll - **Transportschicht:** Ende-zu-Ende-Kommunikation zwischen Anwendungen - **Internetschicht:** Ermöglicht Kommunikation zwischen Hosts in unterschiedlichen Netzwerken - **Link Layer:** Kommunikation mit direkten Nachbarn -![Aufbau des TCP/IP-Headers](resources/tcpip-header.png) +![Aufbau des TCP/IP-Headers](assets/tcpip-header.png) ### Kopplungselemente -![Switches und Router](resources/l2-net.png) +![Switches und Router](assets/l2-net.png) **Switches (auch: Bridge, L2-Switch)** @@ -315,7 +315,7 @@ Unterscheidung zwischen physikalischer und logischer Topologie: - Physikalisch Topologie: tatsächlich vorhandenen Netzwerkkomponenten und ihrer Verbindungen - Logisch Topologie: Kommunikationsbeziehungen und Struktur des Datenflusses -![Schematische Darstellung verschiedener Topologien](resources/topologie.png) +![Schematische Darstellung verschiedener Topologien](assets/topologie.png) > SPF (single point of failure) im Netz? Wenn ja: Ausfallsicherheit gering @@ -362,7 +362,7 @@ Lichtwellenleiter, Singlemode Lichtwellenleiter, ... ## Aufbau eines Ethernet Frames -![Ethernet Frame](resources/eth-frame.png) +![Ethernet Frame](assets/eth-frame.png) - Präambel: Synchronisation zwischen Kommunikationspartnern - SFD: Start of Frame Delimiter (fest Bitfolge zur Identifikation des Frame-Anfangs) @@ -447,7 +447,7 @@ Lichtwellenleiter, Singlemode Lichtwellenleiter, ... **Aufbau** (4 Bytes) -![](resources/vlan-tag.png) +![](assets/vlan-tag.png) - **Tag Protocol Identifier:** fixer Hex-Wert - **Priority Code Point:** Prioritätsinformationen @@ -506,7 +506,7 @@ Lichtwellenleiter, Singlemode Lichtwellenleiter, ... ### IPv4-Header -![Aufbau des IPv4-Headers](resources/ip-paket-aufbau.png) +![Aufbau des IPv4-Headers](assets/ip-paket-aufbau.png) - Version: 4 Bits, Protokollversion - Internet Header Length (IHL): 4 Bits, Länge des Headers in 32 Bit Wörtern, Standardwert 5 -> 5 * 32 Bit = 20 Byte @@ -527,7 +527,7 @@ Lichtwellenleiter, Singlemode Lichtwellenleiter, ... ### Fragmentierung -![Fragmentierung](resources/ip-fragmentierung.png) +![Fragmentierung](assets/ip-fragmentierung.png) - 1:1 Übersetzung von IP-Paket und ETH-Frame - Maximum Transmission Unit (MTU): Maximalgröße des ETH-Payloads @@ -559,13 +559,13 @@ ip addr show - insbesondere durch IPv4-Adress-Knappheit werden öff. Adressen durch Network Address Translation (NAT) auf mehrere Hosts abgebildet - Routing: -![Schema Router](resources/routing-bsp.png) +![Schema Router](assets/routing-bsp.png) ## Address Resolution Protocol (ARP) ### Einordnung -![Ablauf ARP](resources/ip-arp-ablauf.png) +![Ablauf ARP](assets/ip-arp-ablauf.png) - ARP ermittelt zu IP-Adressen und weiteren Adressfamilien die zugehörigen Hardwareadressen - Request-Reply-Protokoll @@ -573,7 +573,7 @@ ip addr show - wenn Ziel-NIC außerhalb des eigenen Netzwerks: Ermittlung der MAC-Adresse des **Gateways**, nichts dahinter - siehe folgendes Bild: -![Beispiel ARP](resources/ip-arp-bsp.png) +![Beispiel ARP](assets/ip-arp-bsp.png) ``` # Für Anzeige von ARP-Anfragen (Beispiel) @@ -628,7 +628,7 @@ Exkurs Namespaces: Verknüpfung von 3 Network Namespaces: -![Aufgabenstellung](resources/exercise-1.png) +![Aufgabenstellung](assets/exercise-1.png) - 3 Namespaces erstellen: @@ -690,7 +690,7 @@ echo 1 > /proc/sys/net/ipv4/ip_forward - soll in nächsten Jahren schrittweise IPv4 ablösen - Vereinfachung des Headers: - ![IPv6-Header](resources/ipv6-header.png) + ![IPv6-Header](assets/ipv6-header.png) - Traffic-Class: Prioritätsangabe - Flow Label: Klassifizierung von Datagrammen in verschiedenen Flows mit gleichem Label @@ -703,7 +703,7 @@ echo 1 > /proc/sys/net/ipv4/ip_forward - in Zusammenhang mit Next-Header-Feld verwendet - verweist auf Header eines Protokolls der nächsthöheren Schicht oder Extension-Header wird in das Datagramm eingebettet -![IPv6 Extension Header](resources/ipv6-header-ext.png) +![IPv6 Extension Header](assets/ipv6-header-ext.png) - Diverse Optionen: Hop-by-Hop Options, Fragment, Destination Options, Routing, Auth, ... @@ -761,7 +761,7 @@ Typ einer Adresse kann an den höchstwertigsten Bits erkannt werden: ### IPv6-Multicasts -![Aufbau einer IPv6 Multicast-Adresse](resources/ipv6-multicast.png) +![Aufbau einer IPv6 Multicast-Adresse](assets/ipv6-multicast.png) - es gibt mehrere Multicast-Gruppen an denen teilgenommen werden kann - es existieren zudem festgelegte "well-known" Multicast-Adressen @@ -814,7 +814,7 @@ versendet -> ist Adresse bereits verwendet sendet entsprechender Host Neighbor-A - Providerinfrastruktur kann auf IPv6 umgestellt werden - IPv4-Adressen beim Provider werden eingespart -![Dual-Stack Lite](resources/ds-lite.png) +![Dual-Stack Lite](assets/ds-lite.png) ### Exkurs: Raw Sockets @@ -901,7 +901,7 @@ ExecStart=/bin/sh -c 'exec /sbin/ip netns exec ns1 /usr/bin/radvd --nodaemon' - Adressierungsmöglichkeit = **Ports** (`bind()` bindet Kommunikation an Port) - Beispiel: zielgerichtete Adressierung von `http`-Server über Port 80 (alle Ports<1024 = *well-known* Ports -> benötigen `root`) -![Übersicht Transportschicht](resources/transportschicht.png) +![Übersicht Transportschicht](assets/transportschicht.png) ## User Datagram Protocol (UDP) @@ -913,7 +913,7 @@ ExecStart=/bin/sh -c 'exec /sbin/ip netns exec ns1 /usr/bin/radvd --nodaemon' - geringer Protokolloverhead -> sehr effizient (besonders für Video-/Audiodaten) - eingesetzt von DNS, DHCP, NTP, SNMP, ... -![UDP-Header](resources/udp-header.png) +![UDP-Header](assets/udp-header.png) ## Transmission Control Protocol (TCP) @@ -927,7 +927,7 @@ ExecStart=/bin/sh -c 'exec /sbin/ip netns exec ns1 /usr/bin/radvd --nodaemon' - Congestion Control (Überlaststeuerung) -> bei verlorenen Pakten dynamische Reduktion der Paketgröße - Segmentierung von Anwendungsdaten in übertragbare Einheiten (auf Grundlage der Maximum Segment Size - MSS) -![TCP-Header](resources/tcp-header.png) +![TCP-Header](assets/tcp-header.png) Sequenznummer: bezieht sich auf das erstes Byte eines Paketes Acknowledgement Number: Bestätigung der Sequenznummer der erhaltenen Bytes (ohne Ack -> wiederholtes Senden des Pakets) @@ -947,7 +947,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb - TCP-Verbindungen sind **bidirektional** -> Sender und Empfänger nehmen ebenso die umgekehrte Rolle ein - Abbau der bidirektional Verbidnungen separat (`FIN`-Flag) -> können auch unidirektional abgebaut werden -![Schematische Darstellung der Ein-/Ausgangspuffer einer TCP-Verbindung](resources/tcp-windows.png) +![Schematische Darstellung der Ein-/Ausgangspuffer einer TCP-Verbindung](assets/tcp-windows.png) - `ECN`-Feld im IP-Header: wird von Router bei Überlast gesetzt - Rückmeldung an den Sender durch das Setzen des Feldes bei ausgehenden IP-Paketen @@ -966,7 +966,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb ### Verbindungsaufbau -![TCP-Zustandsdiagramm (Auszug)](resources/tcp-states.png) +![TCP-Zustandsdiagramm (Auszug)](assets/tcp-states.png) @@ -974,7 +974,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb - Server antwortet mit `SYN-ACK` -> Client bestätigt mit `ACK` - neuer Zustand: Established (zum Schließen: `FIN`-Paket) -![TCP-Handshake](resources/tcp-handshake.png) +![TCP-Handshake](assets/tcp-handshake.png) - `SYN`: Synchronisation von Sequenznummern (zufällig gewählt im Angriffsvektoren zuverringern) - ist `SYN`-Flag gesetzt wird mitgesendete Sequenznummer als Startsequenznummer festgelegt @@ -1000,7 +1000,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb - Senkung der Latenz und Page Load Time (`PLT`) besonders für Webcrawler bedeutend - Spezifikation ist als [Experimental RFC der IETF](https://tools.ietf.org/html/rfc7413) verfügbar -![TCP Fast-Open](resources/tcp-fastopen.png) +![TCP Fast-Open](assets/tcp-fastopen.png) ### Multipath TCP (MTCP) @@ -1022,7 +1022,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb ## Quick UDP Internet Connections (QUIC) -![QUIC](resources/quic.png) +![QUIC](assets/quic.png) - Implementation wichtiger Protokollmechanismen (u.a. Übertragungswiederholung bei Verlusten, Congestion Control, Flow Control) oberhalb von UDP - bietet Möglichkeit, ab dem ersten Paket Anwendungsdaten zu übermitteln @@ -1034,7 +1034,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb - Software-Schnittstelle über die Netzwerk- und Interprozess-Kommunikation durchgeführt werden kann - Anlegen durch Systemaufruf `socket()`: `int socket(int domain, int type, int protocol)` -![Unterteilung von Sockets](resources/sockets.png) +![Unterteilung von Sockets](assets/sockets.png) ### SOCK_STREAM @@ -1047,7 +1047,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb -![Schematischer Ablauf der Server/Client-Kommunikation über SOCK_STREAM](resources/sockets-stream.png) +![Schematischer Ablauf der Server/Client-Kommunikation über SOCK_STREAM](assets/sockets-stream.png) ### SOCK_DGRAM @@ -1059,7 +1059,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb -![Schematischer Ablauf der Server/Client-Kommunikation über SOCK_DGRAM](resources/sockets-dgram.png) +![Schematischer Ablauf der Server/Client-Kommunikation über SOCK_DGRAM](assets/sockets-dgram.png) @@ -1068,7 +1068,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb ## Einleitung -![Überblick Routing](resources/routing-ueberblick.png) +![Überblick Routing](assets/routing-ueberblick.png) - Wie werden Informationen bezüglich der Topologie ausgetauscht? - Wie werden Pfade auf Grundlage der topologischen Informationen berechnet? @@ -1077,7 +1077,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb ## Allgemeines zu Routing ### Beispiel Routingtabellen -![Beispiel Routingtabellen](resources/routing-tabellen.png) +![Beispiel Routingtabellen](assets/routing-tabellen.png) - alternatives Kommando `ip route show` - Flags: @@ -1091,7 +1091,7 @@ Flags: Bitflags zur Steuerung der Kommunikation (z.B. Aufbau, Trennung, der Verb Benachbarte Subnetze können beim Routing zusammengefasst werden, wie im folgenden Beispiel zu sehen: -![Nachbarnetze zusammenfassen](resources/routing-nachbarnetze-zusammenfassen.png) +![Nachbarnetze zusammenfassen](assets/routing-nachbarnetze-zusammenfassen.png) ### Aufteilen von Subnetzen @@ -1193,7 +1193,7 @@ Wie kann ich ein AS beantragen? **"Das Internet" ist also eine Menge aus autonomen Systemen, die jeweils von den Grenzroutern wissen. Über deren jeweilige Funktionsweise müssen keine Informationen vorhanden sein.** -![Übersicht AS](resources/routing-as.png) +![Übersicht AS](assets/routing-as.png) ### Klassifizierung von AS @@ -1205,7 +1205,7 @@ Wie kann ich ein AS beantragen? - Kunde: - Kostenpflichtige Nutzung eines AS als Zugang zum Internet -![Übersicht AS-Tiers](resources/routing-as-tiers.png) +![Übersicht AS-Tiers](assets/routing-as-tiers.png) ### AS und Routing @@ -1224,7 +1224,7 @@ Wie kann ich ein AS beantragen? - Babel - Intermediate System to Intermediate System Protocol (IS-IS) -![Übersicht AS-Routing](resources/routing-as-protokolle.png) +![Übersicht AS-Routing](assets/routing-as-protokolle.png) ## Distanzvektor- und Link-State-Protokolle @@ -1241,7 +1241,7 @@ Wie kann ich ein AS beantragen? - Babel - EIGRP -![Übersicht Distanzvektoren](resources/routing-distanzvektoren.png) +![Übersicht Distanzvektoren](assets/routing-distanzvektoren.png) - Link-State-Routing-Protokolle - regelmäßiger Versand von Informationen (`Link-State-Advertisements (LSA)`) über alle bekannten Nachbarn eines Knotens samt Distanzangabe @@ -1256,7 +1256,7 @@ Wie kann ich ein AS beantragen? - OSPF - IS-IS -![Übersicht LSA](resources/routing-lsa.png) +![Übersicht LSA](assets/routing-lsa.png) ### Bellman-Ford-Algorithmus @@ -1296,7 +1296,7 @@ $\rightarrow$ Zahlreiche Erweiterungen bzw. Alternativen (insb. Dijkstra verfüg 3. Berechne für alle unbesuchten Nachbarn des selektierten Knoten die Distanz zum lokalen Knoten 4. Falls berechnete Distanz kleiner als die bisher für Nachbarn berechnete Distanz, ersetze bisher gespeicherte Distanz und vermerke selektierten Knoten als Vorgänger für unbesuchten Nachbarn -![Dijkstra-Ablauf](resources/routing-dijkstra.png) +![Dijkstra-Ablauf](assets/routing-dijkstra.png) ## Ausgewählte Routing-Protokolle @@ -1315,7 +1315,7 @@ $\rightarrow$ Zahlreiche Erweiterungen bzw. Alternativen (insb. Dijkstra verfüg - auf Anfrage (mittels RIP-Request-Nachricht) - jede Nachricht kann bis zu 25 RIP-Einträge beinhalten -![Dijkstra-Ablauf](resources/routing-rip.png) +![Dijkstra-Ablauf](assets/routing-rip.png) #### (ausgewählte) Schwächen von RIP @@ -1344,7 +1344,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Nach der Ausbildung der Nachbarschaftsbeziehungen werden LSA an Nachbarn gesendet, die diese wiederum an ihre Nachbarn verteilen - dadurch Erzeugung von transitiven Beziehungen -![OSPF-Einordnung](resources/routing-ospf.png) +![OSPF-Einordnung](assets/routing-ospf.png) #### OSPF-Areas - `hello-pakete` wie auch LS-Informationen werden geflutet @@ -1354,7 +1354,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Routen zwischen Areas führen immer über Area 0 - Areas führen zu einer Klassifikation von Routern -![Übersicht Areas](resources/routing-as-ospf.png) +![Übersicht Areas](assets/routing-as-ospf.png) #### OSPF - Hello-Pakete @@ -1362,7 +1362,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Nach Prüfung von in Paketen enthaltenen Informationen wird für jeden benachbarten Knoten ein Eintrag in einer dem empfangenden Interface zugeordneten Datenstruktur vermerkt - zu ausgewählten Nachbarn wird eine "Adjazenz" ausgebildet -![Übersicht Hello](resources/routing-as-ospf-hello.png) +![Übersicht Hello](assets/routing-as-ospf-hello.png) #### OSPF- Designated Router @@ -1375,7 +1375,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Im Hello-Paket enthaltene Router-Priorität wird zur Bestimmung verwendet (Höchste Priorität = DR) - Bei gleichen Prioritätswerten, wird Router mit höchster Rouer-ID (meist IP) verwendet -![Designated Router](resources/routing-ospf-dr.png) +![Designated Router](assets/routing-ospf-dr.png) #### OSPF Link-State-Advertisements @@ -1398,7 +1398,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - jedes LSA beschreibt einen Pfad zu einem Ziel in einem anderen AS . Auf Grundlage der LSAs kann jeder Router eine spezifische Topologie des Netzes erstellen und über Dijkstra kürzeste Pfade berechnen -![Übersicht OSPF-LSA](resources/routing-ospf-lsa.png) +![Übersicht OSPF-LSA](assets/routing-ospf-lsa.png) #### Praxisbeispiel - Router-Daemonen-Implementierung (BIRD) @@ -1422,7 +1422,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert $\rightarrow$ BGP ermöglicht keine Einflussnahme jenseits des eigenen AS -![BGP-Nutzungsmotivation Überblick](resources/routing-as-bgp.png) +![BGP-Nutzungsmotivation Überblick](assets/routing-as-bgp.png) - zum Beispiel: - sobald eine Entscheidungsmöglichkeit mehrerer Routen (über mehrere ISP) vorliegt, lohnt sich der Einsatz von BGP @@ -1438,7 +1438,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Hold Timer bestimmt max. Zeitraum zwischen KEEPALIVE-Nachrichten - `UPDATE`: Informiert Peers über Routen -![BGP-Finite-State-Machine](resources/routing-bgp-finitestate.png) +![BGP-Finite-State-Machine](assets/routing-bgp-finitestate.png) - Konfiguration von Nachbarschaftsbeziehungen erfolgt manuell - zur Konfiguration wird IP-Adresse des Nachbarn samt AS-Nummer angegeben @@ -1447,14 +1447,14 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - außerhalb eines AS: external BGP (eBGP) - Beispiel: Konfiguration von BGP-Nachbarschaften via CLI auf Cisco-Router: -![BGP-Beispielconfig ](resources/routing-as-bgp-config.png) +![BGP-Beispielconfig ](assets/routing-as-bgp-config.png) - Standardmäßig wird zum Nachbar nächstliegendes Interfaces als Quell-Interface für BGP-Kommunikation verwendet - Nach dem Etablieren einer Verbindung zu einem Nachbarn werden in regelmäßigen Abständen `UPDATE`-Nachrichten ausgetauscht - `UPDATE`-Nachrichten dienen dem Bewerben neuer und dem Verwerfen invalid gewordenener Ziele -![BGP-Update Aufbau](resources/routing-bgp-update.png) +![BGP-Update Aufbau](assets/routing-bgp-update.png) - Felder: - Withdrawn Routes: @@ -1465,7 +1465,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Liste von Zielen, die die gleichen Eigenschaften teilen - Durtch IP-Adress-Präfix spezifiziert -![BGP-UPDATE-Attribute ](resources/routing-as-bgp-attributes.png) +![BGP-UPDATE-Attribute ](assets/routing-as-bgp-attributes.png) - Mandatory Attributes: - `ORIGIN`: Definiert die allgemeine Herkunft der Pfadinformationen (drei Werte möglich: `IGP`, `EGP`, `INCOMPLETE`) @@ -1482,7 +1482,7 @@ $\rightarrow$ Schwächen werden u.a. durch Open Shortest Path First adressiert - Möglicher Ansatz im folgenden Beispiel: Wahl der Route mit dem kürzesten AS-Pfad (via AS 500) -![BGP-Pfadauswahl Beispiel ](resources/routing-bgp-paths.png) +![BGP-Pfadauswahl Beispiel ](assets/routing-bgp-paths.png) Beispiel Cisco: Selektion eines Pfads über Auswahlprozess mit etwa einem Dutzend Regeln, die bis zu einem Match schrittweise durchlaufen werden, z.B: - Der Pfad mit dem höchsten `Weight`-Wert (proprietäres Attribut) wird bevorzugt @@ -1520,7 +1520,7 @@ Beispiel Cisco: Selektion eines Pfads über Auswahlprozess mit etwa einem Dutzen - die Anwendungsschicht setzt dabei auf der Transportschicht auf und greift auf diese beispielsweise über die Socket-Schnittstelle zu -![OSI/TCP Vergleich Anwendungsschicht](resources/al-osi-tcp.png) +![OSI/TCP Vergleich Anwendungsschicht](assets/al-osi-tcp.png) - Unterscheidung von zwei Formen von Anwendungsprotokollen gemäß RFC 1122 - Anwenderprotokolle ("User Protocols"): @@ -1538,7 +1538,7 @@ Beispiel Cisco: Selektion eines Pfads über Auswahlprozess mit etwa einem Dutzen - Tool `pstree` zeigt die Hierarchie der laufenden Prozesse an -![Init-Systeme](resources/al-init-systeme.png) +![Init-Systeme](assets/al-init-systeme.png) ## Domain Name System (DNS) @@ -1571,7 +1571,7 @@ Beispiel Cisco: Selektion eines Pfads über Auswahlprozess mit etwa einem Dutzen - Informationen werden auf allen Ebenen teilweise gecached: - in Windows Resolvercache anzeigen: `ipconfig /displaydns` - ![DNS-Resolve](resources/al-dns-resolve.png) + ![DNS-Resolve](assets/al-dns-resolve.png) ### Load-Balancing durch DNS - spielt auch wichtige Aufgaben im Load-Balancing @@ -1587,7 +1587,7 @@ Beispiel Cisco: Selektion eines Pfads über Auswahlprozess mit etwa einem Dutzen - Namensauflösung erfolgt durch Delegation oder Weiterleitung; als Fallback werden Root-Server in die Auflösung einbezogen - Server nehmen intensives Caching vor, um Anfragen möglichst lokal beantworten zu können -![DNS-Strukturübersicht](resources/al-dns-structure.png) +![DNS-Strukturübersicht](assets/al-dns-structure.png) ### Resource Records @@ -1606,7 +1606,7 @@ Beispiel Cisco: Selektion eines Pfads über Auswahlprozess mit etwa einem Dutzen - `NS`: Gibt einen autoritativen Nameserver für eine Domain an; zusätzlich Verwendung zur Zonendelegation Überblick PTR-Record bei Mailversand: - ![PTR-Record](resources/al-dns-ptr.png) + ![PTR-Record](assets/al-dns-ptr.png) ### Protokoll / Anfragedetails @@ -1634,7 +1634,7 @@ Wichtig: Protokollkommunikation erfolgt über UDP - Zonendateien beinhalten Einträge analog zu Resource-Records - Informationen aus Zonendateien können zu Replikationszwecken zwischen Nameservern übertragen werden - Schematische Darstellung des Zonentransfers: -![Zonentransfer-Schema](resources/al-dns-zonetransfer.png) +![Zonentransfer-Schema](assets/al-dns-zonetransfer.png) - Zur Information von Slave-Servern können diese nach Veränderungen in regelmäßigen Intervallen anfragen oder werden asynchron über Veränderungen informiert, z.B. via: - Abfrage des "Start of Authority Resource Records" (SOA RR), der eine bei jeder Änderung inkrementierte Seriennummer enthält @@ -1648,7 +1648,7 @@ Wichtig: Protokollkommunikation erfolgt über UDP - Auszüge aus Konfigurationsdatei des Nameservers `BIND` - z.B `/etc/named.conf` -![Zonentransfer-Beispiel](resources/al-dns-zonetransfer2.png) +![Zonentransfer-Beispiel](assets/al-dns-zonetransfer2.png) ### DNS over TLS / HTTPS @@ -1718,7 +1718,7 @@ Wichtig: Protokollkommunikation erfolgt über UDP - Werkzeuge für die Abfrage von DNS-Informationen von der Kommandozeile oder aus Shell-Skripten heraus - z.B. `dig`, `host`, `nslookup (deprecated!)` -![Manuelle Beispielabfrage](resources/al-dns-manual.png) +![Manuelle Beispielabfrage](assets/al-dns-manual.png) ## Zeitsynchronisation - NTP @@ -1727,7 +1727,7 @@ Wichtig: Protokollkommunikation erfolgt über UDP - zunehmende Abweichung zwischen lokalen Zeitinformationen führt u.a. zu Problemen bei: 1. Identifikation von Kausalitäten zwischen verteilten Ereignissen -![Beispiel verteilte Ereignisse](resources/al-ntp-motivation.png) +![Beispiel verteilte Ereignisse](assets/al-ntp-motivation.png) 2. zahlreichen Protokollen in Rechnernetzen / verteilten Systemen, die Zeitstempel zur Prüfung der Aktualität und Validität einer Anfrage verwenden - Beispiel: Aktualitätsprüfung bei Dynamic-DNS-Servern @@ -1739,11 +1739,11 @@ $\rightarrow$ Uhren müssen möglichst synchronisiert werden - setzt UDP zuer Verteilung der Protokollinformationen ein (Port 123) - Flexibel einsetzbar für die Synchronisation mit einzelnen Referenzzeitgebern oder in einem großen Verbund von NTP-Systemen - Beispielarchitektur: -![NTP-Architektur](resources/al-ntp-struktur.png) +![NTP-Architektur](assets/al-ntp-struktur.png) ### NTP On-Wire Protocol -![NTP-On Wire](resources/al-ntp-onwire.png) +![NTP-On Wire](assets/al-ntp-onwire.png) - Funktion `save()` $\rightarrow$ lokale Speicherung der übergebenen Zeitstempel in einer Variable TX - z.B. `save(t1)` $\rightarrow$ Speicherung in T1 @@ -1779,7 +1779,7 @@ $\rightarrow$ Auswahl entsprechender Server unter den insgesamt verfügbaren Ser - Synchronisation erfolgt meist nur mit einem Server - Einsatz wird nur für Blätter / Knoten im höchsten Stratum eines Netzwerks empfohlen -![NTP-On Wire](resources/al-ntp-sntp.png) +![NTP-On Wire](assets/al-ntp-sntp.png) ### NTP - Implementierungsbeispiele @@ -1817,7 +1817,7 @@ $\rightarrow$ Auswahl entsprechender Server unter den insgesamt verfügbaren Ser - Zwischen Transportschicht und Anwendungsprotokoll angesiedelt - `shim-layer` - Protokoll ermöglicht Kommunikation von Befehlen an Proxy, um hinter dem Proxy TCP-Verbindungen zu etablieren oder UDP-Datagramme weiterzuleiten - Beispiel: -![SOCKS-Beispiel](resources/al-socks-example.png) +![SOCKS-Beispiel](assets/al-socks-example.png) # Prüfungsvorbereitung @@ -1841,7 +1841,7 @@ Frage: Welche sieben Schichten werden durch das in der Vorlesung besprochene ISO Frage: In folgendem Szenario sehen Sie zwei Hosts (Host 1, Host 2), die sich in zwei unterschiedlichen Port-basierten VLANs befinden (VLAN 5 und VLAN 6). Ansonsten wurde noch nichts konfiguriert. Die Separation der VLANs soll erhalten bleiben, allerdings soll eine Kommunikation zwischen den beiden VLANs über den eingezeichenten Pfad (1-6) möglich sein. Welche Konfigurationsschritte sind zu durchlaufen, um diese Kommunikation zu ermöglichen? -![VLAN-Abbildung](resources/klausur-abb1.png) +![VLAN-Abbildung](assets/klausur-abb1.png) ### Internet Protocol (4 Punkte) @@ -1981,7 +1981,7 @@ ns.meineTolleSeite.lol. IN A 127.0.0.1 ## Problemfall: Geswitchtes Netzwerk -![PF Geswitchtes Netzwerk](resources/virt-switched.png) +![PF Geswitchtes Netzwerk](assets/virt-switched.png) - Administratoren müssen eine Vielzahl von Protokollen und ihr Zusammenspiel beherrschen - VLANs müssen hier zum Beispiel auf jedem Switch konsistent konfiguriert werden @@ -1996,7 +1996,7 @@ ns.meineTolleSeite.lol. IN A 127.0.0.1 - Keine Interaktion mit Konfigurationsinformation weiterer Schichten ## Problemfall: Virtualisierung -![PF Virtualisierung](resources/virt-virt.png) +![PF Virtualisierung](assets/virt-virt.png) - z.B. getrennte Kundennetze in einem Rechenzentrum - Switch speichert MAC-Adressen aller Virtuellen Maschinen (VMs) $\rightarrow$ Skalierungsprobleme @@ -2004,7 +2004,7 @@ ns.meineTolleSeite.lol. IN A 127.0.0.1 - Zudem existieren die im Zusammenhang mit physischer, geswitchter Infrastruktur erwähnten Probleme in besonderem Maße ## Software-Defined-Networking: Übersicht -![SDN - Übersicht](resources/virt-sdn-overview.png) +![SDN - Übersicht](assets/virt-sdn-overview.png) - SDN ist ein Ansatz zur Realisierung von Computernetzen, bei dem die Kontrolle über die Datenflüsse und die eigentliche Weiterleitung auf zentral zugreifbare Netzknoten ausgelagert wird - SDN $\rightarrow$ Separation von Control- und Data-Plane @@ -2028,7 +2028,7 @@ ns.meineTolleSeite.lol. IN A 127.0.0.1 ## Northbound / Southbound API -![NB and SB-API](resources/virt-sdn-northandsouth.png) +![NB and SB-API](assets/virt-sdn-northandsouth.png) - Neben Zugriff durch fokussierte Anwendungen wird Northbound API durch umfassende Virtualisierungslösungen verwendet; beispielsweise Zugriff durch OpenStack Neutron - Schnittstellen inklusive zugehöriger Protokolle für die beiden Interaktionspunkte sollen durch Standards wohldefiniert werden @@ -2049,14 +2049,14 @@ ns.meineTolleSeite.lol. IN A 127.0.0.1 - Wesentlicher Ablauf: - Flow-Tables werden angelegt und beschreiben, welche Aktionen für bestimmte Pakete ausgeführt werden sollen -![Openflow](resources/virt-sdn-northandsouth.png) +![Openflow](assets/virt-sdn-northandsouth.png) ### Flow-Tabellen - Jede Flow-Tabelle enthält eine Menge von Einträgen mit fester Struktur: -![Struktur Flow-Tables ](resources/sdn-of-flowtable.png) +![Struktur Flow-Tables ](assets/sdn-of-flowtable.png) - Abzugleichende Informationen: Charakteristika auf die hin das eingehende Paket untersucht wird - Priorität: Ermöglicht Selektion eines Eintrags bei mehreren passenden Einträgen @@ -2091,15 +2091,15 @@ OFPIT_EXPERIMENTER = 0xFFFF // Für experimentelle Instruktionen - Weiterleiten an eine andere Tabelle - Senden des Pakets an den Controller -![1. Beispiel Paketverarbeitung](resources/sdn-of-packets.png) +![1. Beispiel Paketverarbeitung](assets/sdn-of-packets.png) ### Protokoll -![Openflow Protokoll](resources/sdn-of-packets2.png) +![Openflow Protokoll](assets/sdn-of-packets2.png) - Für den Abgleich mit Tabelleneinträgen kann der Ingress-Port, die von einer vorherigen Tabelle dem Paket zugeordneten Metadaten und der Paketheader verwendet werden - Pro Tabelle wird nur ein Eintrag (Eintrag mit höchster Priorität) selektiert -![Openflow Channel-Etablierung](resources/sdn-of-protocol.png) +![Openflow Channel-Etablierung](assets/sdn-of-protocol.png) - Bevor OpenFlow-Nachrichten ausgetauscht werden, wird ein OpenFlow-Channel etabliert - Jeder Switch kann einen Channel zu mehreren Controllern aufbauen (z.B. zur Steigerung der Zuverlässigkeit) @@ -2131,7 +2131,7 @@ OFPIT_EXPERIMENTER = 0xFFFF // Für experimentelle Instruktionen ### Nachrichtenbeispiel -![Openflow Nachrichtenbeispiel](resources/sdn-of-message.png) +![Openflow Nachrichtenbeispiel](assets/sdn-of-message.png) - Interaktion mittels Packet-In- und Packet-Out-Nachricht verdeutlicht die detaillierte Kontrolle, die der Controller über die Abläufe im Netzwerk besitzt - Packet-Out-Nachricht gibt Buffer-ID an, die in Packet-In-Nachricht als Referenz in Paketspeicher des Switches angegeben wurde oder inkludiert das gesamte weiterzuleitende Paket @@ -2147,10 +2147,10 @@ OFPIT_EXPERIMENTER = 0xFFFF // Für experimentelle Instruktionen - Dazu: Kapselung von Ethernet-Frames in UDP-Pakete, die einen eindeutigen Identifier (`VNI`) des VxLAN-Segments enthalten - VTEP sorgt dafür, dass die von der VM versendeten Pakete an diejenigen physischen Maschinen weitergeleitet werden, die auch VMs des selben logischen VxLANs haben -![VxLAN-Übersicht](resources/sdn-vxlan-example.png) +![VxLAN-Übersicht](assets/sdn-vxlan-example.png) ### Ablauf -![VxLAN-Ablauf](resources/sdn-vxlan-example2.png) +![VxLAN-Ablauf](assets/sdn-vxlan-example2.png) 1. Virtuelle Maschine 1 sendet ARP-Broadcast, da sich das Ziel (Virtuelle Maschine 2) im selben IP-Subnetz befindet 2. Der VTEP ergänzt den zu der VM gehörigen VxLAN VNI und sendet den Frame an eine für den VNI verfügbare IP-Multicastadresse; das Paket wird mittels UDP an den VxLAN-Port (gemäß IANA: 4789) adressiert @@ -2165,7 +2165,7 @@ OFPIT_EXPERIMENTER = 0xFFFF // Für experimentelle Instruktionen - IPv6-Multicast: Multicast Listener Discovery (MLD) - VxLAN-Header besteht im Wesentlichen aus einem 24-Bit-Feld für den VNI -![VxLAN-Header](resources/sdn-vxlan-header.png) +![VxLAN-Header](assets/sdn-vxlan-header.png) ## Diskussion SDN-Layer Verortung @@ -2205,7 +2205,7 @@ OFPIT_EXPERIMENTER = 0xFFFF // Für experimentelle Instruktionen ### Übersicht zur Architektur -![Open VSwitch Architektur](resources/sdn-ovs-architecture.png) +![Open VSwitch Architektur](assets/sdn-ovs-architecture.png) - netlink: IPC-Mechanismus für die Kommunikation zwischen Kernel- und User-Space (siehe auch RFC 3549) diff --git a/NET/resources/al-dns-manual.png b/NET-FELDMANN/assets/al-dns-manual.png similarity index 100% rename from NET/resources/al-dns-manual.png rename to NET-FELDMANN/assets/al-dns-manual.png diff --git a/NET/resources/al-dns-ptr.png b/NET-FELDMANN/assets/al-dns-ptr.png similarity index 100% rename from NET/resources/al-dns-ptr.png rename to NET-FELDMANN/assets/al-dns-ptr.png diff --git a/NET/resources/al-dns-resolve.png b/NET-FELDMANN/assets/al-dns-resolve.png similarity index 100% rename from NET/resources/al-dns-resolve.png rename to NET-FELDMANN/assets/al-dns-resolve.png diff --git a/NET/resources/al-dns-structure.png b/NET-FELDMANN/assets/al-dns-structure.png similarity index 100% rename from NET/resources/al-dns-structure.png rename to NET-FELDMANN/assets/al-dns-structure.png diff --git a/NET/resources/al-dns-zonetransfer.png b/NET-FELDMANN/assets/al-dns-zonetransfer.png similarity index 100% rename from NET/resources/al-dns-zonetransfer.png rename to NET-FELDMANN/assets/al-dns-zonetransfer.png diff --git a/NET/resources/al-dns-zonetransfer2.png b/NET-FELDMANN/assets/al-dns-zonetransfer2.png similarity index 100% rename from NET/resources/al-dns-zonetransfer2.png rename to NET-FELDMANN/assets/al-dns-zonetransfer2.png diff --git a/NET/resources/al-init-systeme.png b/NET-FELDMANN/assets/al-init-systeme.png similarity index 100% rename from NET/resources/al-init-systeme.png rename to NET-FELDMANN/assets/al-init-systeme.png diff --git a/NET/resources/al-ntp-motivation.png b/NET-FELDMANN/assets/al-ntp-motivation.png similarity index 100% rename from NET/resources/al-ntp-motivation.png rename to NET-FELDMANN/assets/al-ntp-motivation.png diff --git a/NET/resources/al-ntp-onwire.png b/NET-FELDMANN/assets/al-ntp-onwire.png similarity index 100% rename from NET/resources/al-ntp-onwire.png rename to NET-FELDMANN/assets/al-ntp-onwire.png diff --git a/NET/resources/al-ntp-sntp.png b/NET-FELDMANN/assets/al-ntp-sntp.png similarity index 100% rename from NET/resources/al-ntp-sntp.png rename to NET-FELDMANN/assets/al-ntp-sntp.png diff --git a/NET/resources/al-ntp-struktur.png b/NET-FELDMANN/assets/al-ntp-struktur.png similarity index 100% rename from NET/resources/al-ntp-struktur.png rename to NET-FELDMANN/assets/al-ntp-struktur.png diff --git a/NET/resources/al-osi-tcp.png b/NET-FELDMANN/assets/al-osi-tcp.png similarity index 100% rename from NET/resources/al-osi-tcp.png rename to NET-FELDMANN/assets/al-osi-tcp.png diff --git a/NET/resources/al-socks-example.png b/NET-FELDMANN/assets/al-socks-example.png similarity index 100% rename from NET/resources/al-socks-example.png rename to NET-FELDMANN/assets/al-socks-example.png diff --git a/NET/resources/ds-lite.png b/NET-FELDMANN/assets/ds-lite.png similarity index 100% rename from NET/resources/ds-lite.png rename to NET-FELDMANN/assets/ds-lite.png diff --git a/NET/resources/eth-frame.png b/NET-FELDMANN/assets/eth-frame.png similarity index 100% rename from NET/resources/eth-frame.png rename to NET-FELDMANN/assets/eth-frame.png diff --git a/NET/resources/exercise-1.png b/NET-FELDMANN/assets/exercise-1.png similarity index 100% rename from NET/resources/exercise-1.png rename to NET-FELDMANN/assets/exercise-1.png diff --git a/NET/resources/ip-arp-ablauf.png b/NET-FELDMANN/assets/ip-arp-ablauf.png similarity index 100% rename from NET/resources/ip-arp-ablauf.png rename to NET-FELDMANN/assets/ip-arp-ablauf.png diff --git a/NET/resources/ip-arp-bsp.png b/NET-FELDMANN/assets/ip-arp-bsp.png similarity index 100% rename from NET/resources/ip-arp-bsp.png rename to NET-FELDMANN/assets/ip-arp-bsp.png diff --git a/NET/resources/ip-fragmentierung.png b/NET-FELDMANN/assets/ip-fragmentierung.png similarity index 100% rename from NET/resources/ip-fragmentierung.png rename to NET-FELDMANN/assets/ip-fragmentierung.png diff --git a/NET/resources/ip-paket-aufbau.png b/NET-FELDMANN/assets/ip-paket-aufbau.png similarity index 100% rename from NET/resources/ip-paket-aufbau.png rename to NET-FELDMANN/assets/ip-paket-aufbau.png diff --git a/NET/resources/ipv6-header-ext.png b/NET-FELDMANN/assets/ipv6-header-ext.png similarity index 100% rename from NET/resources/ipv6-header-ext.png rename to NET-FELDMANN/assets/ipv6-header-ext.png diff --git a/NET/resources/ipv6-header.png b/NET-FELDMANN/assets/ipv6-header.png similarity index 100% rename from NET/resources/ipv6-header.png rename to NET-FELDMANN/assets/ipv6-header.png diff --git a/NET/resources/ipv6-multicast.png b/NET-FELDMANN/assets/ipv6-multicast.png similarity index 100% rename from NET/resources/ipv6-multicast.png rename to NET-FELDMANN/assets/ipv6-multicast.png diff --git a/NET/resources/iso-osi.png b/NET-FELDMANN/assets/iso-osi.png similarity index 100% rename from NET/resources/iso-osi.png rename to NET-FELDMANN/assets/iso-osi.png diff --git a/NET/resources/klausur-abb1.png b/NET-FELDMANN/assets/klausur-abb1.png similarity index 100% rename from NET/resources/klausur-abb1.png rename to NET-FELDMANN/assets/klausur-abb1.png diff --git a/NET/resources/l2-net.png b/NET-FELDMANN/assets/l2-net.png similarity index 100% rename from NET/resources/l2-net.png rename to NET-FELDMANN/assets/l2-net.png diff --git a/NET/resources/nic.png b/NET-FELDMANN/assets/nic.png similarity index 100% rename from NET/resources/nic.png rename to NET-FELDMANN/assets/nic.png diff --git a/NET/resources/quic.png b/NET-FELDMANN/assets/quic.png similarity index 100% rename from NET/resources/quic.png rename to NET-FELDMANN/assets/quic.png diff --git a/NET/resources/routing-as-bgp-attributes.png b/NET-FELDMANN/assets/routing-as-bgp-attributes.png similarity index 100% rename from NET/resources/routing-as-bgp-attributes.png rename to NET-FELDMANN/assets/routing-as-bgp-attributes.png diff --git a/NET/resources/routing-as-bgp-config.png b/NET-FELDMANN/assets/routing-as-bgp-config.png similarity index 100% rename from NET/resources/routing-as-bgp-config.png rename to NET-FELDMANN/assets/routing-as-bgp-config.png diff --git a/NET/resources/routing-as-bgp.png b/NET-FELDMANN/assets/routing-as-bgp.png similarity index 100% rename from NET/resources/routing-as-bgp.png rename to NET-FELDMANN/assets/routing-as-bgp.png diff --git a/NET/resources/routing-as-ospf-hello.png b/NET-FELDMANN/assets/routing-as-ospf-hello.png similarity index 100% rename from NET/resources/routing-as-ospf-hello.png rename to NET-FELDMANN/assets/routing-as-ospf-hello.png diff --git a/NET/resources/routing-as-ospf.png b/NET-FELDMANN/assets/routing-as-ospf.png similarity index 100% rename from NET/resources/routing-as-ospf.png rename to NET-FELDMANN/assets/routing-as-ospf.png diff --git a/NET/resources/routing-as-protokolle.png b/NET-FELDMANN/assets/routing-as-protokolle.png similarity index 100% rename from NET/resources/routing-as-protokolle.png rename to NET-FELDMANN/assets/routing-as-protokolle.png diff --git a/NET/resources/routing-as-tiers.png b/NET-FELDMANN/assets/routing-as-tiers.png similarity index 100% rename from NET/resources/routing-as-tiers.png rename to NET-FELDMANN/assets/routing-as-tiers.png diff --git a/NET/resources/routing-as.png b/NET-FELDMANN/assets/routing-as.png similarity index 100% rename from NET/resources/routing-as.png rename to NET-FELDMANN/assets/routing-as.png diff --git a/NET/resources/routing-bgp-finitestate.png b/NET-FELDMANN/assets/routing-bgp-finitestate.png similarity index 100% rename from NET/resources/routing-bgp-finitestate.png rename to NET-FELDMANN/assets/routing-bgp-finitestate.png diff --git a/NET/resources/routing-bgp-paths.png b/NET-FELDMANN/assets/routing-bgp-paths.png similarity index 100% rename from NET/resources/routing-bgp-paths.png rename to NET-FELDMANN/assets/routing-bgp-paths.png diff --git a/NET/resources/routing-bgp-update.png b/NET-FELDMANN/assets/routing-bgp-update.png similarity index 100% rename from NET/resources/routing-bgp-update.png rename to NET-FELDMANN/assets/routing-bgp-update.png diff --git a/NET/resources/routing-bsp.png b/NET-FELDMANN/assets/routing-bsp.png similarity index 100% rename from NET/resources/routing-bsp.png rename to NET-FELDMANN/assets/routing-bsp.png diff --git a/NET/resources/routing-dijkstra.png b/NET-FELDMANN/assets/routing-dijkstra.png similarity index 100% rename from NET/resources/routing-dijkstra.png rename to NET-FELDMANN/assets/routing-dijkstra.png diff --git a/NET/resources/routing-distanzvektoren.png b/NET-FELDMANN/assets/routing-distanzvektoren.png similarity index 100% rename from NET/resources/routing-distanzvektoren.png rename to NET-FELDMANN/assets/routing-distanzvektoren.png diff --git a/NET/resources/routing-lsa.png b/NET-FELDMANN/assets/routing-lsa.png similarity index 100% rename from NET/resources/routing-lsa.png rename to NET-FELDMANN/assets/routing-lsa.png diff --git a/NET/resources/routing-nachbarnetze-zusammenfassen.png b/NET-FELDMANN/assets/routing-nachbarnetze-zusammenfassen.png similarity index 100% rename from NET/resources/routing-nachbarnetze-zusammenfassen.png rename to NET-FELDMANN/assets/routing-nachbarnetze-zusammenfassen.png diff --git a/NET/resources/routing-ospf-dr.png b/NET-FELDMANN/assets/routing-ospf-dr.png similarity index 100% rename from NET/resources/routing-ospf-dr.png rename to NET-FELDMANN/assets/routing-ospf-dr.png diff --git a/NET/resources/routing-ospf-lsa.png b/NET-FELDMANN/assets/routing-ospf-lsa.png similarity index 100% rename from NET/resources/routing-ospf-lsa.png rename to NET-FELDMANN/assets/routing-ospf-lsa.png diff --git a/NET/resources/routing-ospf.png b/NET-FELDMANN/assets/routing-ospf.png similarity index 100% rename from NET/resources/routing-ospf.png rename to NET-FELDMANN/assets/routing-ospf.png diff --git a/NET/resources/routing-rip.png b/NET-FELDMANN/assets/routing-rip.png similarity index 100% rename from NET/resources/routing-rip.png rename to NET-FELDMANN/assets/routing-rip.png diff --git a/NET/resources/routing-tabellen.png b/NET-FELDMANN/assets/routing-tabellen.png similarity index 100% rename from NET/resources/routing-tabellen.png rename to NET-FELDMANN/assets/routing-tabellen.png diff --git a/NET/resources/routing-ueberblick.png b/NET-FELDMANN/assets/routing-ueberblick.png similarity index 100% rename from NET/resources/routing-ueberblick.png rename to NET-FELDMANN/assets/routing-ueberblick.png diff --git a/NET/resources/sdn-of-flowtable.png b/NET-FELDMANN/assets/sdn-of-flowtable.png similarity index 100% rename from NET/resources/sdn-of-flowtable.png rename to NET-FELDMANN/assets/sdn-of-flowtable.png diff --git a/NET/resources/sdn-of-message.png b/NET-FELDMANN/assets/sdn-of-message.png similarity index 100% rename from NET/resources/sdn-of-message.png rename to NET-FELDMANN/assets/sdn-of-message.png diff --git a/NET/resources/sdn-of-packets.png b/NET-FELDMANN/assets/sdn-of-packets.png similarity index 100% rename from NET/resources/sdn-of-packets.png rename to NET-FELDMANN/assets/sdn-of-packets.png diff --git a/NET/resources/sdn-of-packets2.png b/NET-FELDMANN/assets/sdn-of-packets2.png similarity index 100% rename from NET/resources/sdn-of-packets2.png rename to NET-FELDMANN/assets/sdn-of-packets2.png diff --git a/NET/resources/sdn-of-protocol.png b/NET-FELDMANN/assets/sdn-of-protocol.png similarity index 100% rename from NET/resources/sdn-of-protocol.png rename to NET-FELDMANN/assets/sdn-of-protocol.png diff --git a/NET/resources/sdn-openflow.png b/NET-FELDMANN/assets/sdn-openflow.png similarity index 100% rename from NET/resources/sdn-openflow.png rename to NET-FELDMANN/assets/sdn-openflow.png diff --git a/NET/resources/sdn-ovs-architecture.png b/NET-FELDMANN/assets/sdn-ovs-architecture.png similarity index 100% rename from NET/resources/sdn-ovs-architecture.png rename to NET-FELDMANN/assets/sdn-ovs-architecture.png diff --git a/NET/resources/sdn-vxlan-example.png b/NET-FELDMANN/assets/sdn-vxlan-example.png similarity index 100% rename from NET/resources/sdn-vxlan-example.png rename to NET-FELDMANN/assets/sdn-vxlan-example.png diff --git a/NET/resources/sdn-vxlan-example2.png b/NET-FELDMANN/assets/sdn-vxlan-example2.png similarity index 100% rename from NET/resources/sdn-vxlan-example2.png rename to NET-FELDMANN/assets/sdn-vxlan-example2.png diff --git a/NET/resources/sdn-vxlan-header.png b/NET-FELDMANN/assets/sdn-vxlan-header.png similarity index 100% rename from NET/resources/sdn-vxlan-header.png rename to NET-FELDMANN/assets/sdn-vxlan-header.png diff --git a/NET/resources/sockets-dgram.png b/NET-FELDMANN/assets/sockets-dgram.png similarity index 100% rename from NET/resources/sockets-dgram.png rename to NET-FELDMANN/assets/sockets-dgram.png diff --git a/NET/resources/sockets-stream.png b/NET-FELDMANN/assets/sockets-stream.png similarity index 100% rename from NET/resources/sockets-stream.png rename to NET-FELDMANN/assets/sockets-stream.png diff --git a/NET/resources/sockets.png b/NET-FELDMANN/assets/sockets.png similarity index 100% rename from NET/resources/sockets.png rename to NET-FELDMANN/assets/sockets.png diff --git a/NET/resources/tcp-fastopen.png b/NET-FELDMANN/assets/tcp-fastopen.png similarity index 100% rename from NET/resources/tcp-fastopen.png rename to NET-FELDMANN/assets/tcp-fastopen.png diff --git a/NET/resources/tcp-handshake.png b/NET-FELDMANN/assets/tcp-handshake.png similarity index 100% rename from NET/resources/tcp-handshake.png rename to NET-FELDMANN/assets/tcp-handshake.png diff --git a/NET/resources/tcp-header.png b/NET-FELDMANN/assets/tcp-header.png similarity index 100% rename from NET/resources/tcp-header.png rename to NET-FELDMANN/assets/tcp-header.png diff --git a/NET/resources/tcp-states.png b/NET-FELDMANN/assets/tcp-states.png similarity index 100% rename from NET/resources/tcp-states.png rename to NET-FELDMANN/assets/tcp-states.png diff --git a/NET/resources/tcp-windows.png b/NET-FELDMANN/assets/tcp-windows.png similarity index 100% rename from NET/resources/tcp-windows.png rename to NET-FELDMANN/assets/tcp-windows.png diff --git a/NET/resources/tcpip-header.png b/NET-FELDMANN/assets/tcpip-header.png similarity index 100% rename from NET/resources/tcpip-header.png rename to NET-FELDMANN/assets/tcpip-header.png diff --git a/NET/resources/tcpip.png b/NET-FELDMANN/assets/tcpip.png similarity index 100% rename from NET/resources/tcpip.png rename to NET-FELDMANN/assets/tcpip.png diff --git a/NET/resources/tls-handshake.png b/NET-FELDMANN/assets/tls-handshake.png similarity index 100% rename from NET/resources/tls-handshake.png rename to NET-FELDMANN/assets/tls-handshake.png diff --git a/NET/resources/topologie.png b/NET-FELDMANN/assets/topologie.png similarity index 100% rename from NET/resources/topologie.png rename to NET-FELDMANN/assets/topologie.png diff --git a/NET/resources/transportschicht.png b/NET-FELDMANN/assets/transportschicht.png similarity index 100% rename from NET/resources/transportschicht.png rename to NET-FELDMANN/assets/transportschicht.png diff --git a/NET/resources/udp-header.png b/NET-FELDMANN/assets/udp-header.png similarity index 100% rename from NET/resources/udp-header.png rename to NET-FELDMANN/assets/udp-header.png diff --git a/NET/resources/virt-sdn-northandsouth.png b/NET-FELDMANN/assets/virt-sdn-northandsouth.png similarity index 100% rename from NET/resources/virt-sdn-northandsouth.png rename to NET-FELDMANN/assets/virt-sdn-northandsouth.png diff --git a/NET/resources/virt-sdn-overview.png b/NET-FELDMANN/assets/virt-sdn-overview.png similarity index 100% rename from NET/resources/virt-sdn-overview.png rename to NET-FELDMANN/assets/virt-sdn-overview.png diff --git a/NET/resources/virt-switched.png b/NET-FELDMANN/assets/virt-switched.png similarity index 100% rename from NET/resources/virt-switched.png rename to NET-FELDMANN/assets/virt-switched.png diff --git a/NET/resources/virt-virt.png b/NET-FELDMANN/assets/virt-virt.png similarity index 100% rename from NET/resources/virt-virt.png rename to NET-FELDMANN/assets/virt-virt.png diff --git a/NET/resources/vlan-tag.png b/NET-FELDMANN/assets/vlan-tag.png similarity index 100% rename from NET/resources/vlan-tag.png rename to NET-FELDMANN/assets/vlan-tag.png diff --git a/PRO/README.md b/PRO-KASCHE/README.md similarity index 95% rename from PRO/README.md rename to PRO-KASCHE/README.md index 3c1dcac..0290a6c 100644 --- a/PRO/README.md +++ b/PRO-KASCHE/README.md @@ -81,7 +81,7 @@ IT-Trends ## Cloud Computing -![Skizze einer Cloud](resources/cloud-skizze.svg) +![Skizze einer Cloud](assets/cloud-skizze.svg) **Vorteile:** @@ -93,7 +93,7 @@ IT-Trends ### Edge Computing -![Edge Computing](resources/edge-computing-skizze.svg) +![Edge Computing](assets/edge-computing-skizze.svg) - Anwendung: "am Rand des großen Netzwerks" --> für Geräte, die nicht in einem Netzwerk liegen (z.B. IoT-Sensoren) @@ -196,7 +196,7 @@ z.B.: Diese können wiederum aus Microservices zusammengesetzt sein, die untereinander vernetzt sind, siehe Schaubild. -![Microservices Schema](resources/microservice.png) +![Microservices Schema](assets/microservice.png) ## Dienste @@ -247,7 +247,7 @@ Dazu muss ein **Load Balancer** die Anfragen beispielsweise an diejenigen MS mit # Service-Orientierte-Architekturen (SOA) -![Service-Orientierte-Architektur](resources/SOA-Example.png) +![Service-Orientierte-Architektur](assets/soa-example.png) ## REST - Schnittstellen - Representational State Transfer @@ -324,7 +324,7 @@ https://backstage.dhge.de/course/view.php?id=2718 4. Parallelisierung auf GRID-Ebene - mehrere zusammengefasste Cluster -![Cluster und Grid Computing](resources/Rechner_Cluster_Grid.png) +![Cluster und Grid Computing](assets/rechner-cluster-grid.png) ### Cluster-Computing @@ -350,7 +350,7 @@ https://backstage.dhge.de/course/view.php?id=2718 - Vorteil ist die gute Skalierbarkeit - Ressourcen und Zugriff sind dezentral -![Grid Computing](resources/GRID_Computing.png) +![Grid Computing](assets/grid-computing.png) ## Warum (keine) Cloud @@ -391,7 +391,7 @@ https://backstage.dhge.de/course/view.php?id=2718 ## IT-Aufbau -![Aufbau einer IT](resources/it-aufbau.png) +![Aufbau einer IT](assets/it-aufbau.png) ## AWS-Einführung @@ -469,7 +469,7 @@ Dann noch **Passwort abrufen** klicken um mit dem SSH-Keypair das Passwort zu en # Machine Learning - KI, neuronale Netzwerke, ... -![Übersicht: Machine Learning](resources/Machine_Learning.png) +![Übersicht: Machine Learning](assets/machine-learning.png) Arthur Samuel (1959): @@ -508,9 +508,9 @@ Tom Mitchell: ## Mathe-Perspektive -![Guetefunktion](resources/guetefunktion.png) +![Guetefunktion](assets/guetefunktion.png) -![Guetefunktion2](resources/guetefunktion2.png) +![guetefunktion-2](assets/guetefunktion-2.png) ### Erkennen ohne Lernen @@ -525,7 +525,7 @@ $tilde{f}(z_{1}, param_{2})=z_{2}$ $dbtilde{f}(z_{2}, param{3})= y$ -![Konstruktion Neuronales Netz](resources/neuronales-netz.png) +![Konstruktion Neuronales Netz](assets/neuronales-netz.png) diff --git a/PRO/resources/cloud-skizze.svg b/PRO-KASCHE/assets/cloud-skizze.svg similarity index 100% rename from PRO/resources/cloud-skizze.svg rename to PRO-KASCHE/assets/cloud-skizze.svg diff --git a/PRO/resources/edge-computing-skizze.svg b/PRO-KASCHE/assets/edge-computing-skizze.svg similarity index 100% rename from PRO/resources/edge-computing-skizze.svg rename to PRO-KASCHE/assets/edge-computing-skizze.svg diff --git a/PRO/resources/GRID_Computing.png b/PRO-KASCHE/assets/grid-computing.png similarity index 100% rename from PRO/resources/GRID_Computing.png rename to PRO-KASCHE/assets/grid-computing.png diff --git a/PRO/resources/guetefunktion2.png b/PRO-KASCHE/assets/guetefunktion-2.png similarity index 100% rename from PRO/resources/guetefunktion2.png rename to PRO-KASCHE/assets/guetefunktion-2.png diff --git a/PRO/resources/guetefunktion.png b/PRO-KASCHE/assets/guetefunktion.png similarity index 100% rename from PRO/resources/guetefunktion.png rename to PRO-KASCHE/assets/guetefunktion.png diff --git a/PRO/resources/it-aufbau.png b/PRO-KASCHE/assets/it-aufbau.png similarity index 100% rename from PRO/resources/it-aufbau.png rename to PRO-KASCHE/assets/it-aufbau.png diff --git a/PRO/resources/it-aufbau.svg b/PRO-KASCHE/assets/it-aufbau.svg similarity index 100% rename from PRO/resources/it-aufbau.svg rename to PRO-KASCHE/assets/it-aufbau.svg diff --git a/PRO/resources/Machine_Learning.png b/PRO-KASCHE/assets/machine-learning.png similarity index 100% rename from PRO/resources/Machine_Learning.png rename to PRO-KASCHE/assets/machine-learning.png diff --git a/PRO/resources/microservice.png b/PRO-KASCHE/assets/microservice.png similarity index 100% rename from PRO/resources/microservice.png rename to PRO-KASCHE/assets/microservice.png diff --git a/PRO/resources/microservice.svg b/PRO-KASCHE/assets/microservice.svg similarity index 100% rename from PRO/resources/microservice.svg rename to PRO-KASCHE/assets/microservice.svg diff --git a/PRO/resources/neuronales-netz.png b/PRO-KASCHE/assets/neuronales-netz.png similarity index 100% rename from PRO/resources/neuronales-netz.png rename to PRO-KASCHE/assets/neuronales-netz.png diff --git a/PRO/resources/Rechner_Cluster_Grid.png b/PRO-KASCHE/assets/rechner-cluster-grid.png similarity index 100% rename from PRO/resources/Rechner_Cluster_Grid.png rename to PRO-KASCHE/assets/rechner-cluster-grid.png diff --git a/PRO/resources/SOA-Example.png b/PRO-KASCHE/assets/soa-example.png similarity index 100% rename from PRO/resources/SOA-Example.png rename to PRO-KASCHE/assets/soa-example.png diff --git a/README.md b/README.md index 17bd2b0..b26f3a9 100644 --- a/README.md +++ b/README.md @@ -14,11 +14,11 @@ Alle Kommilitonen sind dazu eingeladen, ihre eigenen Beiträge zu diesem Projekt ## Module -- [DBS - Datenbanken](./DBS) -- [RES - Betriebssystemverwaltung](./RES) -- [PRO - IT-Trends](./PRO) -- [SWE - Systemanalyse](./SWE) -- [NET - Rechnernetze](./NET) +- [DBS - Datenbanken](./DBS-DORENDORF) +- [RES - Betriebssystemverwaltung](./RES-GUENTHER) +- [PRO - IT-Trends](./PRO-KASCHE) +- [SWE - Systemanalyse](./SWE-KASCHE) +- [NET - Rechnernetze](./NET-FELDMANN) ## Markdown-Erweiterungen diff --git a/RES/README.md b/RES-GUENTHER/README.md similarity index 100% rename from RES/README.md rename to RES-GUENTHER/README.md diff --git a/RES/pruefungsfragen.md b/RES-GUENTHER/extra/pruefungsfragen.md similarity index 97% rename from RES/pruefungsfragen.md rename to RES-GUENTHER/extra/pruefungsfragen.md index 06bc32d..252a98d 100644 --- a/RES/pruefungsfragen.md +++ b/RES-GUENTHER/extra/pruefungsfragen.md @@ -1,109 +1,109 @@ -# Mögliche Prüfungsfragen - -- Wie bezieht man Windows ISOs? - - Media Creation Tool / Microsoft Downloads -- Wie ermittelt man die Windows-Version / RAM-Menge / CPU-Kerne? - - Windows + Pause - - ``winver`` (Windows-Verion) - - Taskmanager (Leistungstab) - - ``dxdiag`` - - Systeminformationen -- Zweck der Virtual Box Gasterweiterung - - Drag&Drop - - Copy&Paste - - Resize der Fenstergröße - - USB 3.0 - - Grafiktreiber/Grafikbeschleunigung - - Peripheriegeräte des Hosts -- Nutzen von Hashing - - Integrität von Dateien festellen (Abgleichen von gebildetem und übergebenem Hashwert) -- Programm und Parameter, ein Befehl kann zum Parameter werden (man pages, sudo) - - ``sudo apt list --upgradable`` - - ``sudo apt list -u`` -- Wie man Windows optionalfeatures (de)aktiviert? - - ``Dism /online /enable-feature /featurename:NetFx3`` - - Systemsteuerung \--> Programme und Features \--> Windows-Features aktivieren oder deaktivieren -- Welche Filesysteme sind Ihnen bekannt? - - NTFS (Windows) - - ReFs (Windows) - - Fat 32 (Windows) - - xfs (Linux) - - ext4 (Linux) -- Was ist ein Backup? - - Kopie von Daten, um sie später wiederherstellen zu können - - mögliche Tools: cp, scp, rsync,... -- Welchen Zweck hat ein DHCP-Server? - - automatische Netzwerkkonfiguration -- Welchen Zweck hat ein FTP-Server? - - Dateiübertragung über ein Netzwerk -- Zweck von FTP - - Dateitransfer zwischen Clients und Server -- Was ist DD? - - Disk Dump \--> Sichern und Flashen von USB-Sticks (nicht Prüfungsrelevant) -- Die Zeichen ``>>`` bzw. ``>`` im Skript bzw. tee -a - - Umleitung der Ausgabe - - ``>`` File ersetzen - - ``>>`` An File anfügen - - tee -a An File anfügen und Ausgabe des Übergebenen -- Unterschied Datensicherung und Datenspiegelung - - Datensicherung = Datensicherung auf zweitem System. Ist unabhängig von Änderungen an der Quelle. - - Datenspiegelung = Datenkopie auf demselben System, aber auf verschiedenen Datenträgern. Ist abhängig von Änderungen an der Quelle. -- Unterschied Datenrate und Bandbreite - - Bandbreite = Frequenzbereich, über den Kommunikation erfolgt. Rein physikalische Kenngröße. - - Datenrate = Menge der übertragenen Daten in einem bestimmten Zeitraum -- Welchen Zweck erfüllt `rsync`? - - Remotecopy über Netzwerk -- Welche Informationen benötigt man um sich bei einem SSH-Server einzuloggen? - - IP/FQDN, Port, Passwort, Nutzer - - Schlüsselpaar, dessen Public Key in der ``authorized_keys``-Datei des Servers eingetragen ist -- Wie verwendet man Schleifen in Bash-Skripten? - -```bash -for i in $( seq 1 $1 ) -do - echo $i - echo "haus:paula:günther:xaver" -done - -for ((i = 1; i <= $#; i++ )); do printf '%s\n' "Arg $i: ${!i}" done -``` - -- Warum sind Konfigurationsdateien schreibgeschützt? Nennen Sie ein Beispiel! - - Damit ein unprivilegierter Nutzer nichts kaputt macht - - ``/etc/environment`` -- Welche Installationsschritte müssen Sie für die Installation eines Webservers mit Datenbankanbindung anwenden? -- Was ist ein DDoS-Angriff? - - Systemüberlastung durch viele Hosts -- Welche Vorteile bietet die Virtualisierung? - - Flexibilität - - Ausnutzung Hardware - - Sicherungspunkte - - Testumgebung - - Isolation zwischen Host und Gästen - - parallele Ausführung mehrerer Betriebssysteme - - Skalierbarkeit -- Welche Schritte sind bei einem Verwaltungsakt zu beachten? -- Wie überwacht man Netzwerktraffic? - - Wireshark -- Möglichkeiten zu Betriebssysteminstallation? - - PXE-Boot - - Image-Installation -- Was sind die Vorteile eines Skripts gegenüber interaktiver Konfiguration - - einheitliche Konfiguration, kein versehentliches Ändern - - Automatisierung möglich -- was sind Kontingente und warum sind sie notwendig? - - Kontingente: logische Speicher-Begrenzungen für Ordner - - verhindert übermäßige Nutzung durch Programme und Nutzer, damit System weiter arbeiten kann - -Teil 2: - -- Browser zeigt "Unable to connect" --> was tun? - - physische Verbindung prüfen - - IP-Konfiguration prüfen - - Windows: ``ipconfig`` - - Linux: ``ip a`` oder ``ifconfig`` - - Ping zu verlässlichem Server - - DNS prüfen - - Proxy-Einstellungen prüfen - - Linux: ``/etc/environment`` -- Was sind Elemente einer Firewall-Regel? (alternativ zu: erstellen Sie eine Firewall-Regel) +# Mögliche Prüfungsfragen + +- Wie bezieht man Windows ISOs? + - Media Creation Tool / Microsoft Downloads +- Wie ermittelt man die Windows-Version / RAM-Menge / CPU-Kerne? + - Windows + Pause + - ``winver`` (Windows-Verion) + - Taskmanager (Leistungstab) + - ``dxdiag`` + - Systeminformationen +- Zweck der Virtual Box Gasterweiterung + - Drag&Drop + - Copy&Paste + - Resize der Fenstergröße + - USB 3.0 + - Grafiktreiber/Grafikbeschleunigung + - Peripheriegeräte des Hosts +- Nutzen von Hashing + - Integrität von Dateien festellen (Abgleichen von gebildetem und übergebenem Hashwert) +- Programm und Parameter, ein Befehl kann zum Parameter werden (man pages, sudo) + - ``sudo apt list --upgradable`` + - ``sudo apt list -u`` +- Wie man Windows optionalfeatures (de)aktiviert? + - ``Dism /online /enable-feature /featurename:NetFx3`` + - Systemsteuerung \--> Programme und Features \--> Windows-Features aktivieren oder deaktivieren +- Welche Filesysteme sind Ihnen bekannt? + - NTFS (Windows) + - ReFs (Windows) + - Fat 32 (Windows) + - xfs (Linux) + - ext4 (Linux) +- Was ist ein Backup? + - Kopie von Daten, um sie später wiederherstellen zu können + - mögliche Tools: cp, scp, rsync,... +- Welchen Zweck hat ein DHCP-Server? + - automatische Netzwerkkonfiguration +- Welchen Zweck hat ein FTP-Server? + - Dateiübertragung über ein Netzwerk +- Zweck von FTP + - Dateitransfer zwischen Clients und Server +- Was ist DD? + - Disk Dump \--> Sichern und Flashen von USB-Sticks (nicht Prüfungsrelevant) +- Die Zeichen ``>>`` bzw. ``>`` im Skript bzw. tee -a + - Umleitung der Ausgabe + - ``>`` File ersetzen + - ``>>`` An File anfügen + - tee -a An File anfügen und Ausgabe des Übergebenen +- Unterschied Datensicherung und Datenspiegelung + - Datensicherung = Datensicherung auf zweitem System. Ist unabhängig von Änderungen an der Quelle. + - Datenspiegelung = Datenkopie auf demselben System, aber auf verschiedenen Datenträgern. Ist abhängig von Änderungen an der Quelle. +- Unterschied Datenrate und Bandbreite + - Bandbreite = Frequenzbereich, über den Kommunikation erfolgt. Rein physikalische Kenngröße. + - Datenrate = Menge der übertragenen Daten in einem bestimmten Zeitraum +- Welchen Zweck erfüllt `rsync`? + - Remotecopy über Netzwerk +- Welche Informationen benötigt man um sich bei einem SSH-Server einzuloggen? + - IP/FQDN, Port, Passwort, Nutzer + - Schlüsselpaar, dessen Public Key in der ``authorized_keys``-Datei des Servers eingetragen ist +- Wie verwendet man Schleifen in Bash-Skripten? + +```bash +for i in $( seq 1 $1 ) +do + echo $i + echo "haus:paula:günther:xaver" +done + +for ((i = 1; i <= $#; i++ )); do printf '%s\n' "Arg $i: ${!i}" done +``` + +- Warum sind Konfigurationsdateien schreibgeschützt? Nennen Sie ein Beispiel! + - Damit ein unprivilegierter Nutzer nichts kaputt macht + - ``/etc/environment`` +- Welche Installationsschritte müssen Sie für die Installation eines Webservers mit Datenbankanbindung anwenden? +- Was ist ein DDoS-Angriff? + - Systemüberlastung durch viele Hosts +- Welche Vorteile bietet die Virtualisierung? + - Flexibilität + - Ausnutzung Hardware + - Sicherungspunkte + - Testumgebung + - Isolation zwischen Host und Gästen + - parallele Ausführung mehrerer Betriebssysteme + - Skalierbarkeit +- Welche Schritte sind bei einem Verwaltungsakt zu beachten? +- Wie überwacht man Netzwerktraffic? + - Wireshark +- Möglichkeiten zu Betriebssysteminstallation? + - PXE-Boot + - Image-Installation +- Was sind die Vorteile eines Skripts gegenüber interaktiver Konfiguration + - einheitliche Konfiguration, kein versehentliches Ändern + - Automatisierung möglich +- was sind Kontingente und warum sind sie notwendig? + - Kontingente: logische Speicher-Begrenzungen für Ordner + - verhindert übermäßige Nutzung durch Programme und Nutzer, damit System weiter arbeiten kann + +Teil 2: + +- Browser zeigt "Unable to connect" --> was tun? + - physische Verbindung prüfen + - IP-Konfiguration prüfen + - Windows: ``ipconfig`` + - Linux: ``ip a`` oder ``ifconfig`` + - Ping zu verlässlichem Server + - DNS prüfen + - Proxy-Einstellungen prüfen + - Linux: ``/etc/environment`` +- Was sind Elemente einer Firewall-Regel? (alternativ zu: erstellen Sie eine Firewall-Regel) diff --git "a/RES-GUENTHER/extra/vortr\303\244ge/README.md" "b/RES-GUENTHER/extra/vortr\303\244ge/README.md" new file mode 100644 index 0000000..576bb69 --- /dev/null +++ "b/RES-GUENTHER/extra/vortr\303\244ge/README.md" @@ -0,0 +1,45 @@ + + +**Inhaltsverzeichnis** + +- [Vorträge vom 3. Semester / 11/2020](#vorträge-vom-3-semester--112020) + - [Wer macht was?](#wer-macht-was) + + + +Vorträge im 3. Semester +======================= + +Hier sind die Themenvorträge aus Betriebssystemverwaltung, 3. Semester gesammelt. + +Anforderungen von Prof. Günther, Stand 03.11.2020: + +```txt +Vortragsinhalt + + Zweck des Verwaltungsakts + Ziele der Konfiguration bzw. Installation + Beispielkonfigurationen (scripte, usw.) + Test (praktisch, Anleitung der Kommilitonen) + +Formale Richtlinien + + Powerpoint + Dauer 30 min pro Gruppe (exlusive Demo) + Ca. 20 - 40 Folien + Folien mit Seitenzahlen und Namen +``` + +## Themen + +- SSH +- FTP +- DHCP +- Samba +- MQTT +- Apache +- fail2ban +- rsync & dd +- filesysteme +- quota +- nextcloud diff --git a/RES/vortrag/2020-11/ssh_max_basti/README.md "b/RES-GUENTHER/extra/vortr\303\244ge/ssh/README.md" similarity index 100% rename from RES/vortrag/2020-11/ssh_max_basti/README.md rename to "RES-GUENTHER/extra/vortr\303\244ge/ssh/README.md" diff --git "a/RES-GUENTHER/extra/vortr\303\244ge/ssh/ssh.pdf" "b/RES-GUENTHER/extra/vortr\303\244ge/ssh/ssh.pdf" new file mode 100644 index 0000000..2fe1b59 Binary files /dev/null and "b/RES-GUENTHER/extra/vortr\303\244ge/ssh/ssh.pdf" differ diff --git a/RES/vortrag/2020-11/README.md b/RES/vortrag/2020-11/README.md deleted file mode 100644 index 4975194..0000000 --- a/RES/vortrag/2020-11/README.md +++ /dev/null @@ -1,36 +0,0 @@ - - -**Inhaltsverzeichnis** - -- [Vorträge vom 3. Semester / 11/2020](#vorträge-vom-3-semester--112020) - - [Wer macht was?](#wer-macht-was) - - - -Vorträge vom 3. Semester / 11/2020 -================================== - -Hier sind die Themenvorträge aus Betriebssystemverwaltung, 3. Semester gesammelt. - -Anforderungen vom Prof., Stand 03.11.2020: - -```txt -Vortragsinhalt - - Zweck des Verwaltungsakts - Ziele der Konfiguration bzw. Installation - Beispielkonfigurationen (scripte, usw.) - Test (praktisch, Anleitung der Kommilitonen) - -Formale Richtlinien - - Powerpoint - Dauer 30 min pro Gruppe (exlusive Demo) - Ca. 20 - 40 Folien - Folien mit Seitenzahlen und Namen -``` - -## Wer macht was? - -- [x] Max & Basti: SSH -- [x] Yannis & Luis: SSH diff --git a/RES/vortrag/2020-11/ssh_max_basti/resources/folien-max-basti.pptx b/RES/vortrag/2020-11/ssh_max_basti/resources/folien-max-basti.pptx deleted file mode 100644 index 46465fa..0000000 Binary files a/RES/vortrag/2020-11/ssh_max_basti/resources/folien-max-basti.pptx and /dev/null differ diff --git a/RES/vortrag/2020-11/ssh_max_basti/resources/folien-yannis-luis.pptx b/RES/vortrag/2020-11/ssh_max_basti/resources/folien-yannis-luis.pptx deleted file mode 100644 index 037ab87..0000000 Binary files a/RES/vortrag/2020-11/ssh_max_basti/resources/folien-yannis-luis.pptx and /dev/null differ diff --git a/SWE/README.md b/SWE-KASCHE/README.md similarity index 97% rename from SWE/README.md rename to SWE-KASCHE/README.md index 174d5a0..5d634b9 100644 --- a/SWE/README.md +++ b/SWE-KASCHE/README.md @@ -343,7 +343,7 @@ Hier wird immer wieder in eine Phase "zurück gesprungen", falls etwas nicht pas > > -> Zeit + Kosten + Leistung können nicht gleichzeitig verbessert werden -![Schematische Darstellung des V-Modells](resources/v-modell.png) +![Schematische Darstellung des V-Modells](assets/v-modell.png) | Vorteile | Nachteile | | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | @@ -769,7 +769,7 @@ ist eine öffentliche Erklärung von Zielen / Absichten im SCRUM-Prozess als **E | Import | Größe Block | Ereignisse | Dark-Mode | Smart Art | | Read Only Mode | RS-Prüfung | | Sprachen | Einfärben | | Speichern | Tabellen | | | Zuschneiden | -| Export | | +| Export | | | | | - Liste wird mit dem Nutzer durchgegangen -> Sortierung der Features innerhalb der Spalten nach Priorität - dann kann abgegrenzt werden, was alles in MVP 1, 2, 3 etc. enthalten sein soll @@ -810,6 +810,7 @@ ist eine öffentliche Erklärung von Zielen / Absichten im SCRUM-Prozess als **E 7. PBSK ... Papier, Bleistift, Schere, Kleber # Design-Thinking + ist eine Methode für den Innovationsprozess **Idee**: @@ -918,7 +919,7 @@ $$f(Qualitätsmaße) \hat{=}Kennzahlen \rightarrow Aufwand=g(LOC) \cdot f_1(Q,Ma ### Magisches Dreieck / Teufelsquadrat -![Magisches Dreieck wird zum Quadrat](resources/magisches-dreieck.png) +![Magisches Dreieck wird zum Quadrat](assets/magisches-dreieck.png) **Idee** @@ -1114,7 +1115,7 @@ $MM_{korrigiert}=K_u \cdot K_p \cdot MM$ - Schnittstellen zu externen Datenbeständen - interne Datenbankanfragen (im weitesten Sinne) -![Abbildung Transaktionszählung](resources/function-points-count.png) +![Abbildung Transaktionszählung](assets/function-points-count.png) 2. Werte werden gewichtet - S $\rightarrow$ einfach @@ -1134,7 +1135,7 @@ $MM_{korrigiert}=K_u \cdot K_p \cdot MM$ 4. Gesamtergebnis -![Screenshot Ergebnisberechnung](resources/function-points-solution.png) +![Screenshot Ergebnisberechnung](assets/function-points-solution.png) | | S | M | L | | ---------------------- | --------- | ---------- | ---------- | @@ -1186,7 +1187,7 @@ $Function Points = FP_{Roh}* Korrekturfaktoren$ - Kommunikation - Use Case -![Überblick UML-Diagrammtypen](resources/uml-diagrams.png) +![Überblick UML-Diagrammtypen](assets/uml-diagrams.png) ### Eigenschaften der Objektorientierung @@ -1211,7 +1212,7 @@ $Function Points = FP_{Roh}* Korrekturfaktoren$ - statische Infos der Klasse einbeziehen - Beziehungen zu anderen Klassen darstellen -![Beispiel Klassendiagramm](resources/uml-class.png) +![Beispiel Klassendiagramm](assets/uml-class.png) - Vorgehen: - Klasse in Rechteck fassen, oberes Feld Klassenname @@ -1252,11 +1253,11 @@ HUND -up-|> TIER - beschreibt Instanz einer Klasse -![Beispiel Objektdiagramm](resources/uml-objects.png) +![Beispiel Objektdiagramm](assets/uml-objects.png) ## Klassen-Diagramm mit Assoziationen - Beziehungen zwischen Klassen werden dargestellt (Vererbung ist damit nicht gemeint) -![Beispiel Klassen-Diagramm mit Assoziation](resources/uml-association.png) +![Beispiel Klassen-Diagramm mit Assoziation](assets/uml-association.png) - Kardinalität angebbar - `*`: beliebig - `a...b`: mindestens `a` maximal `b` @@ -1264,15 +1265,15 @@ HUND -up-|> TIER - Komposition: gleiche Lebenszeiten -![Komposition](resources/uml-komposition.png) +![Komposition](assets/uml-komposition.png) - Aggregation: unabhängige Lebenszeiten -![Aggregation](resources/uml-aggregation.png) +![Aggregation](assets/uml-aggregation.png) Beispiel: Hier hat eine Destruktion von A auch eine Destruktion von B zur Folge. -![Beispiel Klassen-Diagramm mit Assoziation](resources/uml-komposition-bsp.png) +![Beispiel Klassen-Diagramm mit Assoziation](assets/uml-komposition-bsp.png) Navigierbarkeit wird mit Pfeilen dargestellt @@ -1281,7 +1282,7 @@ Navigierbarkeit wird mit Pfeilen dargestellt Beispielaufgabe: -![Beispiel Tiere](resources/uml-tiere-bsp.png) +![Beispiel Tiere](assets/uml-tiere-bsp.png) ## Verhaltensdiagramme @@ -1295,7 +1296,7 @@ Beispielaufgabe: - asynchrone Nachricht $\rightarrow$ wie Antwort - Mit ausgemaltem Punkt auf einer Seite des Pfeils wird ausgedrückt, dass Sender bzw. Empfänger unbekannt ist -![Beispiel Sequenzdiagramm](resources/uml-sequenz.png) +![Beispiel Sequenzdiagramm](assets/uml-sequenz.png) ## Zustandsdiagramme @@ -1310,16 +1311,16 @@ $\rightarrow$ Durch Ereignisse werden Transitionen ausgelöst. - Pfeile stellen die Transitionen (Übergänge) dar - An den Pfeilen werden die Ereignisse vermerkt -![Beispiel State-Diagramm](resources/uml-state-mensch.png) +![Beispiel State-Diagramm](assets/uml-state-mensch.png) Hier ein Beispiel von Zuständen, die durch einen Standesbeamten "gesteuert" werden -![Beispiel Standesbeamter](resources/uml-standesbeamter-bsp.png) +![Beispiel Standesbeamter](assets/uml-standesbeamter-bsp.png) ## Aktivitätsdiagramm - Ausschnitt aus Programmablauf -![Beispiel Aktivitätsdiagramm](resources/uml-activity-bsp.png) +![Beispiel Aktivitätsdiagramm](assets/uml-activity-bsp.png) **Objektorientierte Analyse** diff --git a/SWE/resources/function-points-count.png b/SWE-KASCHE/assets/function-points-count.png similarity index 100% rename from SWE/resources/function-points-count.png rename to SWE-KASCHE/assets/function-points-count.png diff --git a/SWE/resources/function-points-solution.png b/SWE-KASCHE/assets/function-points-solution.png similarity index 100% rename from SWE/resources/function-points-solution.png rename to SWE-KASCHE/assets/function-points-solution.png diff --git a/SWE/resources/magisches-dreieck.png b/SWE-KASCHE/assets/magisches-dreieck.png similarity index 100% rename from SWE/resources/magisches-dreieck.png rename to SWE-KASCHE/assets/magisches-dreieck.png diff --git a/SWE/resources/magisches-dreieck.svg b/SWE-KASCHE/assets/magisches-dreieck.svg similarity index 100% rename from SWE/resources/magisches-dreieck.svg rename to SWE-KASCHE/assets/magisches-dreieck.svg diff --git a/SWE/resources/uml-activity-bsp.png b/SWE-KASCHE/assets/uml-activity-bsp.png similarity index 100% rename from SWE/resources/uml-activity-bsp.png rename to SWE-KASCHE/assets/uml-activity-bsp.png diff --git a/SWE/resources/uml-aggregation.png b/SWE-KASCHE/assets/uml-aggregation.png similarity index 100% rename from SWE/resources/uml-aggregation.png rename to SWE-KASCHE/assets/uml-aggregation.png diff --git a/SWE/resources/uml-association.png b/SWE-KASCHE/assets/uml-association.png similarity index 100% rename from SWE/resources/uml-association.png rename to SWE-KASCHE/assets/uml-association.png diff --git a/SWE/resources/uml-class.png b/SWE-KASCHE/assets/uml-class.png similarity index 100% rename from SWE/resources/uml-class.png rename to SWE-KASCHE/assets/uml-class.png diff --git a/SWE/resources/uml-diagrams.png b/SWE-KASCHE/assets/uml-diagrams.png similarity index 100% rename from SWE/resources/uml-diagrams.png rename to SWE-KASCHE/assets/uml-diagrams.png diff --git "a/SWE/resources/uml-kardinalit\303\244ten-bsp.png" "b/SWE-KASCHE/assets/uml-kardinalit\303\244ten-bsp.png" similarity index 100% rename from "SWE/resources/uml-kardinalit\303\244ten-bsp.png" rename to "SWE-KASCHE/assets/uml-kardinalit\303\244ten-bsp.png" diff --git a/SWE/resources/uml-komposition-bsp.png b/SWE-KASCHE/assets/uml-komposition-bsp.png similarity index 100% rename from SWE/resources/uml-komposition-bsp.png rename to SWE-KASCHE/assets/uml-komposition-bsp.png diff --git a/SWE/resources/uml-komposition.png b/SWE-KASCHE/assets/uml-komposition.png similarity index 100% rename from SWE/resources/uml-komposition.png rename to SWE-KASCHE/assets/uml-komposition.png diff --git a/SWE/resources/uml-objects.png b/SWE-KASCHE/assets/uml-objects.png similarity index 100% rename from SWE/resources/uml-objects.png rename to SWE-KASCHE/assets/uml-objects.png diff --git a/SWE/resources/uml-sequenz.png b/SWE-KASCHE/assets/uml-sequenz.png similarity index 100% rename from SWE/resources/uml-sequenz.png rename to SWE-KASCHE/assets/uml-sequenz.png diff --git a/SWE/resources/uml-standesbeamter-bsp.png b/SWE-KASCHE/assets/uml-standesbeamter-bsp.png similarity index 100% rename from SWE/resources/uml-standesbeamter-bsp.png rename to SWE-KASCHE/assets/uml-standesbeamter-bsp.png diff --git a/SWE/resources/uml-state-mensch.png b/SWE-KASCHE/assets/uml-state-mensch.png similarity index 100% rename from SWE/resources/uml-state-mensch.png rename to SWE-KASCHE/assets/uml-state-mensch.png diff --git a/SWE/resources/uml-tiere-bsp.png b/SWE-KASCHE/assets/uml-tiere-bsp.png similarity index 100% rename from SWE/resources/uml-tiere-bsp.png rename to SWE-KASCHE/assets/uml-tiere-bsp.png diff --git a/SWE/resources/v-modell.png b/SWE-KASCHE/assets/v-modell.png similarity index 100% rename from SWE/resources/v-modell.png rename to SWE-KASCHE/assets/v-modell.png diff --git a/SWE/resources/v-modell.svg b/SWE-KASCHE/assets/v-modell.svg similarity index 100% rename from SWE/resources/v-modell.svg rename to SWE-KASCHE/assets/v-modell.svg