C Training für die Linux / UNIX Netzwerk-Entwicklung
Entwickle in drei Tagen einen Mehrbenutzer-Server mit IPv6, Timeouts und abgesicherter TLS-Verbindung
Die wichtigsten Themen
TCP- und UDP-Programme entwickeln
Mehrbenutzer-Server umsetzen
IPv4 und IPv6 anbinden
poll und epoll einsetzen
TLS-Verbindungen absichern
Netzwerkfehler analysieren
Überblick Am Ende der Schulung entwickelst du einen C-Server, der Verbindungen mehrerer Clients verarbeitet, IPv4 und IPv6 unterstützt und Verbindungen kontrolliert beendet. Du programmierst TCP- und UDP-Anwendungen mit der...
Am Ende der Schulung entwickelst du einen C-Server, der Verbindungen mehrerer Clients verarbeitet, IPv4 und IPv6 unterstützt und Verbindungen kontrolliert beendet. Du programmierst TCP- und UDP-Anwendungen mit der POSIX-Socket-API, behandelst Timeouts und wertest Fehler so aus, dass ein einzelner Verbindungsabbruch nicht den gesamten Dienst beeinträchtigt. Die Übungen führen vom ersten Client bis zu einem Mehrbenutzer-Server mit I/O-Multiplexing und einer abgesicherten TLS-Verbindung.
Der fachliche Schwerpunkt liegt auf Linux- und UNIX-Systemen. Portable POSIX-Verfahren werden von Linux-spezifischen Erweiterungen wie epoll abgegrenzt. Bestehende Architekturen mit ONC RPC, TLI/STREAMS oder CORBA werden als Bestandsumgebungen berücksichtigt. So kannst du Legacy-Code untersuchen, Änderungen vorbereiten und neue Netzwerkdienste mit kontrollierter Ressourcenverwaltung entwickeln. Weitere Angebote findest du unter den Linux-Schulungen. Speichersicherheit und die Absicherung von C-Code vertiefst du in der Schulung Sichere Anwendungen mit C und C++.
Live-Demos, Programmierübungen und Code-Reviews finden in Gruppen mit maximal acht Personen statt. cmt bietet die Schulung als Präsenz-, Online- oder Inhouse-Training an. Für mehrere Entwickler kann das Training als Firmenschulung durchgeführt werden. Frage einen passenden Termin und das gewünschte Format für dein Team an.
Die Themen Protokollfamilien und Client-Server-Modelle · POSIX-Sockets und Dateideskriptoren · Socket-Adressen und Portbindung · Namensauflösung mit getaddrinfo und getnameinfo · IPv4- und IPv6-Adressierung...
Socket-API und Adressierung
- Protokollfamilien und Client-Server-Modelle
- POSIX-Sockets und Dateideskriptoren
- Socket-Adressen und Portbindung
- Namensauflösung mit getaddrinfo und getnameinfo
- IPv4- und IPv6-Adressierung
TCP, UDP und Protokolldesign
- TCP mit socket und connect
- Serverablauf mit bind und accept
- UDP mit recvfrom und sendto
- Nachrichtenrahmen und Byte-Reihenfolge
- Timeouts und Verbindungsabbrüche
Nebenläufigkeit und I/O-Multiplexing
- Blockierende und nicht blockierende Sockets
- select für bestehende Anwendungen
- poll für portable Servermodelle
- epoll für Linux-Dienste
- Prozesse, Threads und Ereignisverarbeitung
Verteilte Dienste und Bestandsarchitekturen
- Grundprinzipien verteilter Anwendungen
- Remote Procedure Calls
- ONC RPC und rpcgen
- Historische TLI/STREAMS- und CORBA-Ansätze
- Service-Schnittstellen und Lastverteilung
TLS und sichere Netzwerkdienste
- TLS 1.2 und TLS 1.3
- Zertifikatsprüfung und Vertrauensketten
- Authentifizierung und Nachrichtenintegrität
- Schlüsselverwaltung und Signaturen
- Rechtebegrenzung für Serverprozesse
Fehlersuche und Code-Review
- Race Conditions und Ressourcenlecks
- Logging und Systemdiagnose
- Reproduzierbare Netzwerkcode-Tests
- Kontrolliertes Beenden von Diensten
- Review von Architekturentscheidungen
Zielgruppe
- C-Entwickler mit Aufgaben in der Netzwerkprogrammierung
- Systemprogrammierer für Linux- und UNIX-Plattformen
- Entwickler von Embedded- und Infrastrukturkomponenten
- Administratoren mit Entwicklungsaufgaben
- Fachkräfte mit Aufgaben bei der Modernisierung C-basierter Netzwerkdienste und Legacy-Schnittstellen
Das lernst du
- Einen TCP-Server für mehrere parallele Clients entwickeln
- TCP- und UDP-Clients mit POSIX-Sockets implementieren
- IPv4 und IPv6 über getaddrinfo anbinden
- Nicht blockierende I/O mit poll und epoll umsetzen
- TLS-Verbindungen mit Zertifikatsprüfung absichern
- Fehler, Timeouts und Ressourcenlecks behandeln, damit Netzwerkdienste einzelne Verbindungsabbrüche kontrolliert überstehen
So arbeiten wir
- Fachliche Einführung anhand lauffähiger C-Beispiele
- Live-Demos der zentralen Socket-APIs
- Hands-on-Übungen zu TCP, UDP und TLS
- Programmieraufgaben zu Mehrbenutzer-Servern
- Gemeinsame Fehleranalyse in Client-Server-Anwendungen
- Code-Reviews zu Sicherheit, Wartbarkeit und Portabilität
Empfohlene Vorkenntnisse
- Gute C-Kenntnisse zu Zeigern, Strukturen und Speicherverwaltung
- Grundkenntnisse in Linux oder UNIX sowie im Umgang mit der Shell
- Basiswissen zu TCP/IP, Ports und Client-Server-Modellen
- Erfahrung mit Compilern, Makefiles oder vergleichbaren Build-Prozessen
- Fehlende C-Grundlagen vorab im C-Grundkurs aufbauen
- Linux-Grundlagen bei Bedarf im Linux-Grundkurs erwerben
Dein Fahrplan
Der erste Tag führt von den TCP/IP-Grundlagen zur ersten lauffähigen Client-Server-Anwendung. Die Übungen behandeln Adressfamilien, Ports, POSIX-Sockets und die Namensauflösung für IPv4 und IPv6.
- TCP/IP, UDP und Client-Server-Modelle
- Socket-Erzeugung und Adressierung
- Bindung und Verbindungsaufbau
- Namensauflösung mit getaddrinfo
- TCP- und UDP-Programme in C
Organisatorisches
Lernformate
Unsere Seminare bieten dir maximale Flexibilität: Du kannst zwischen Live-Online und Vor Ort in unseren modernen Schulungszentren im D-A-CH Raum wählen. Beide Formate garantieren dir die gleiche hohe Qualität und interaktive Lernerfahrung.
Schulungsarten
Wir bieten dir verschiedene Schulungsarten: Offene Seminare, Firmenseminare für Teams und Inhouse-Schulungen direkt bei dir vor Ort. So findest du genau das Format, das zu deinen Bedürfnissen passt.
Aktuelle Software
In unseren offenen Kursen arbeiten wir mit der aktuellsten Software-Version. So lernst du direkt mit den Tools und Features, die du auch in deinem Arbeitsalltag verwendest - praxisnah und zukunftsorientiert. Bei Inhouse- und Firmenschulungen bestimmt ihr die Version.
Deine Vorteile
Zufriedenheitsgarantie
Wir sind von unserer Qualität überzeugt. Sollte ein Training einmal nicht deinen Erwartungen entsprechen, bieten wir dir an, den Kurs kostenlos zu wiederholen oder ein anderes Training zu besuchen. Ohne Risiko, ohne Diskussion.
Inklusivleistungen
Deine Teilnahme beinhaltet: Schulungsmaterial, Zertifikat, Verpflegung (bei Präsenzveranstaltungen) und persönliche Betreuung durch unsere Trainer und unser Orga-Team. Alles aus einer Hand - keine versteckten Kosten.
Lernen von Experten
Unsere Trainer sind zertifizierte und erfahrene Profis mit jahrelanger Berufserfahrung. Sie vermitteln dir in den Kursen nicht nur theoretisches Wissen, sondern teilen ihre Erfahrungen aus realen Projekten und helfen dir, das Gelernte direkt in deiner täglichen Arbeit anzuwenden. Das ist kein Werbeversprechen, sondern unser Anspruch. Am besten siehst du das in unseren Bewertungen, z.B. auch bei Google.
Keine Vorkasse
Du zahlst erst nach dem Seminar. Keine Vorkasse, keine Vorauszahlung - so kannst du sicher sein, dass du nur für das bezahlst, was du auch wirklich erhalten hast. Die Rechnung erhältst du erst nach Kursbeginn.
Max. 8 Teilnehmende
Wir setzen auf kleine Gruppen, damit du die Aufmerksamkeit bekommst, die du verdienst. So haben wir mehr Zeit für deine individuellen Fragen und können gezielt auf deine Bedürfnisse eingehen.
Termine & Buchung
Vor Ort
Online
Nicht der passende Termin dabei?
Wir finden eine Lösung: anderer Termin, mehrere Teilnehmer, Inhouse-Schulung oder individuelle Beratung.
Lieber gleich das ganze Team schulen?
Diese Schulung gibt es auch exklusiv für dein Unternehmen, bei euch vor Ort, an unseren Standorten oder Live-Online. Inhalte und Termine nach Maß.
Inhouse-Schulung
Wir kommen zu euch: diese Schulung maßgeschneidert in euren Räumen, für Unternehmen und Behörden.
- Inhalte exakt auf euch zugeschnitten
- Termine nach euren Bedürfnissen
- Günstiger ab mehreren Teilnehmern
- Vertraute Umgebung, kein Reiseaufwand
Firmen-Seminar
Exklusiv für dein Team an einem unserer Standorte oder Live-Online, individuell angepasst.
- Geschlossene Gruppe aus eurem Haus
- Individuelle Terminplanung
- An unseren Standorten oder Live-Online
- Angepasste Inhalte
Fragen und Antworten zu C Training für die Linux / UNIX Netzwerk-Entwicklung
Was ist C-Netzwerkprogrammierung unter Linux und UNIX?
C-Netzwerkprogrammierung entwickelt Clients und Server mit der Socket-API des Betriebssystems. C-Programme öffnen Verbindungen, übertragen Daten über TCP oder UDP und reagieren auf Timeouts sowie Verbindungsabbrüche. POSIX-Schnittstellen unterstützen portablen Code für Linux und viele UNIX-Systeme, während epoll eine Linux-spezifische Erweiterung für viele parallele Verbindungen ist.
Wann nutzt man poll oder epoll statt select?
poll eignet sich für portable Anwendungen, die mehrere Dateideskriptoren ohne die Größenbeschränkung von select überwachen. epoll ist für Linux-Dienste mit vielen gleichzeitig beobachteten Verbindungen vorgesehen. select bleibt relevant, wenn bestehender Code analysiert oder auf eine andere I/O-Architektur umgestellt wird.
Werden IPv4, IPv6 und TLS praktisch programmiert?
IPv4, IPv6 und TLS werden in Programmierübungen mit C umgesetzt. Die Beispiele verwenden getaddrinfo für die Adressauflösung und behandeln den TLS-Verbindungsaufbau, die Zertifikatsprüfung sowie Fehler beim Handshake.
Welche C-Kenntnisse brauche ich für die Schulung?
Du solltest Zeiger, Strukturen, Speicherverwaltung und Fehlerbehandlung in C beherrschen. Grundkenntnisse zu Linux oder UNIX, Dateideskriptoren und TCP/IP werden ebenfalls vorausgesetzt. Fehlende Programmiergrundlagen kannst du im C Grundkurs aufbauen.
Eignet sich das Training für bestehenden UNIX-Legacy-Code?
Bestehender Netzwerkcode mit POSIX-Sockets, ONC RPC, rpcgen oder älteren Servermodellen wird berücksichtigt. Du vergleichst diese Ansätze mit aktuellen Socket-Architekturen und bereitest Änderungen vor, ohne die ursprünglichen Schnittstellen vorschnell zu ersetzen.
Gibt es nach der Schulung ein offizielles Zertifikat?
Eine offizielle Herstellerzertifizierung ist nicht Bestandteil dieser Schulung. Welcher Teilnahmenachweis für deinen Termin ausgestellt werden kann, klärst du bei der Anfrage mit cmt.
Kann die C-Netzwerkprogrammierung als Inhouse-Schulung stattfinden?
Die Schulung ist als Präsenz-, Online- oder Inhouse-Training verfügbar. Für ein Entwicklerteam kann cmt ein Firmenseminar oder einen Workshop organisieren. Die konkrete Durchführung und organisatorische Anforderungen werden bei der Anfrage abgestimmt.
Wie lange dauert die Schulung und wie erhalte ich Termine und Preise?
Die Schulung dauert drei Tage. Aktuelle Termine, Preise und Konditionen für mehrere Mitarbeiter erhältst du auf Anfrage. Dabei kannst du auch den gewünschten Standort sowie eine Online- oder Inhouse-Durchführung angeben.
Weitere häufig gestellte Fragen und Antworten findest du in den FAQs .
Passende Schulungen nach dem Kurs
Unser Qualitätsversprechen: Wissen, das in der Praxis funktioniert
Aus der Praxis für die Praxis
Schluss mit theoretischem Ballast. Wir trainieren dich für reale IT-Herausforderungen, nicht für Multiple-Choice-Tests. Unsere Trainer vermitteln dir genau das Wissen, das am nächsten Montagmorgen im Job wirklich funktioniert.
Individuell statt "Schema F"
Deine Fragen passen nicht ins Standard-Skript? Bei uns schon. Wir verzichten auf starre Lehrpläne und geben deinen konkreten Projekt-Fragen Raum. Unsere Trainer passen die Inhalte flexibel an das an, was dich und dein Team aktuell weiterbringt.
Maximale Freiheit: Remote oder vor Ort
Lerne so, wie es in deinen Alltag passt - ohne Reise-Stress und Zeitverlust. Egal ob remote, hybrid oder präsent vor Ort: Wir garantieren dir ein nahtloses und effektives Lernerlebnis, egal von wo du dich zuschaltest.
Mit Zufriedenheitsgarantie
Wir sind von unserer Qualität überzeugt - und wollen, dass du es auch bist. Sollte ein Training einmal nicht deinen Erwartungen entsprechen, bieten wir dir an, den Kurs kostenlos zu wiederholen oder ein anderes Training zu besuchen. Ohne Risiko, ohne Diskussion.
Über 20.000 Unternehmen und Behörden vertrauen auf uns