9.3. Das Kabel und das Einzelbild

Die beiden untersten Schichten des Stacks sind auf der Kamera am ehesten als selbstverständlich anzusehen, denn alles, was sie tun, geschieht innerhalb des Chips, und die Kamera verwaltet sie, ohne dass Python-Code beteiligt ist. Ein kurzer Überblick lohnt sich dennoch, weil sie erklären, was „lokales Netzwerk“ bedeutet und wo die Grenze zur restlichen Infrastruktur beginnt.

9.3.1. Die physikalische Schicht

Die unterste Schicht ist die eigentliche Signalübertragung – die Drähte, Glasfasern oder Funkwellen, die Bits zwischen zwei Geräten transportieren. Ethernet über Twisted-Pair-Kabel kodiert jedes Bit als Spannungsübergang mit einer festen Rate. Wi-Fi moduliert dieselben Bits auf einen Funkträger im 2,4-GHz- oder 5-GHz-Band. Beide erzeugen einen Strom von Binärziffern zwischen zwei Hardware-Komponenten; beide sind genau die Art von Detail, das die Siliziumschaltung der Kamera erledigt, ohne dass die Software darüber nachdenken muss.

Aus Sicht eines Python-Skripts ist die physikalische Schicht entweder „die Verbindung ist aktiv“ oder „die Verbindung ist unterbrochen“. Das network-Modul meldet diesen Zustand über seine isconnected()-Methode auf der Wi-Fi-Schnittstelle und über den Verbindungsstatus auf einer kabelgebundenen Ethernet-Schnittstelle. Darüber hinaus bleibt alles andere, was diese Schicht tut, verborgen.

9.3.3. Was die Kamera bereitstellt

Die Kamera besitzt eine MAC-Adresse für jede Netzwerkschnittstelle, die sie hat – eine Wi-Fi-Adresse, wenn die Kamera Drahtlosunterstützung bietet, eine Ethernet-Adresse, wenn das Board den entsprechenden Port hat. Das network-Modul gewährt Zugriff darauf über network_interface.config("mac") auf dem jeweiligen Schnittstellenobjekt, das die Anwendung gerade verwendet, wenn sie die Adresse auslesen muss. Manche Anwendungen müssen das, etwa um das Gerät bei einem Flottenverwaltungssystem zu registrieren. Ansonsten ist dies der einzige Regler, den die Sicherungsschicht an Python übergibt.

Alles andere – das Framing, der eigentliche MAC-Verkehr auf dem Draht oder in der Luft, die Aushandlung zwischen Kamera und Access-Point darüber, welcher Kanal und welche Rate zu verwenden sind – geschieht vollständig innerhalb der Wi-Fi- oder Ethernet-Hardware. Die nächste Seite behandelt die eine Stelle, an der ein Python-Skript bei der Sicherungsschicht doch ein Mitspracherecht hat: der Kamera mitzuteilen, welchem Netzwerk sie beitreten soll.