SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
Creating UDP Broadcast App
Using Python Socket
on Windows & Linux
Dony Riyanto
June 2021
Telegram: @donyriyanto
slideshare.net/donyriyanto
Receiver.py
Notes:
• SO_REUSEPORT enable port reusage so we will be able to run
multiple clients and servers on single (host, port). Do not use
socket.SO_REUSEADDR except you using linux(kernel<3.9): goto
https://stackoverflow.com/questions/14388706/how-do-so-
reuseaddr-and-so-reuseport-differ for more information.
• For linux hosts all sockets that want to share the same address and
port combination must belong to processes that share the same
effective user ID! So, on linux(kernel>=3.9) you have to run multiple
servers and clients under one user to share the same (host, port).
Thanks to @stevenreddie
• For Windows OS, it is important to bind it to network interface IP.
Sender.py
Important for Windows OS
Testing
Local Laptop
Windows 7
192.168.1.19
PC
Windows 7
192.168.1.12
VM in PC
Ubuntu 18
192.168.1.11
(bridge)
Local Area Network
Succesfully on the same host
Testing
Local Laptop
Windows 7
192.168.1.19
PC
Windows 7
192.168.1.12
VM in PC
Ubuntu 18
192.168.1.11
(bridge)
Local Area Network
Succesfully on the different host, same OS version, LAN over WiFi
Testing
Local Laptop
Windows 7
192.168.1.19
PC
Windows 7
192.168.1.12
VM in PC
Ubuntu 18
192.168.1.11
(bridge)
Local Area Network
Succesfully on the different host, different OS, accros bridge network driver, LAN over WiFi

Contenu connexe

Tendances

Session Initiation Protocol
Session Initiation ProtocolSession Initiation Protocol
Session Initiation ProtocolMatt Bynum
 
Internet of Things: Comparison of Protocols & Standards
Internet of Things: Comparison of Protocols & StandardsInternet of Things: Comparison of Protocols & Standards
Internet of Things: Comparison of Protocols & StandardsAshu Joshi
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDNOpenStack Korea Community
 
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and SecurityCilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and SecurityThomas Graf
 
用 Go 語言實戰 Push Notification 服務
用 Go 語言實戰 Push Notification 服務用 Go 語言實戰 Push Notification 服務
用 Go 語言實戰 Push Notification 服務Bo-Yi Wu
 
Inside neutron 2
Inside neutron 2Inside neutron 2
Inside neutron 2Robin Gong
 
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoTLet's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoTJian-Hong Pan
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux NetworkingPLUMgrid
 
Embedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debuggingEmbedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debuggingAnne Nicolas
 
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
BPF  & Cilium - Turning Linux into a Microservices-aware Operating SystemBPF  & Cilium - Turning Linux into a Microservices-aware Operating System
BPF & Cilium - Turning Linux into a Microservices-aware Operating SystemThomas Graf
 
Kubernetes Networking 101
Kubernetes Networking 101Kubernetes Networking 101
Kubernetes Networking 101Weaveworks
 
Настройка маршрутизаторов Juniper серии MX
Настройка маршрутизаторов Juniper серии MXНастройка маршрутизаторов Juniper серии MX
Настройка маршрутизаторов Juniper серии MXSkillFactory
 
Intro to GitOps & Flux.pdf
Intro to GitOps & Flux.pdfIntro to GitOps & Flux.pdf
Intro to GitOps & Flux.pdfWeaveworks
 
OpenTelemetry For Architects
OpenTelemetry For ArchitectsOpenTelemetry For Architects
OpenTelemetry For ArchitectsKevin Brockhoff
 
Comparison of existing cni plugins for kubernetes
Comparison of existing cni plugins for kubernetesComparison of existing cni plugins for kubernetes
Comparison of existing cni plugins for kubernetesAdam Hamsik
 

Tendances (20)

Session Initiation Protocol
Session Initiation ProtocolSession Initiation Protocol
Session Initiation Protocol
 
Internet of Things: Comparison of Protocols & Standards
Internet of Things: Comparison of Protocols & StandardsInternet of Things: Comparison of Protocols & Standards
Internet of Things: Comparison of Protocols & Standards
 
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
 
IGMP
IGMPIGMP
IGMP
 
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and SecurityCilium - Bringing the BPF Revolution to Kubernetes Networking and Security
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
 
用 Go 語言實戰 Push Notification 服務
用 Go 語言實戰 Push Notification 服務用 Go 語言實戰 Push Notification 服務
用 Go 語言實戰 Push Notification 服務
 
Inside neutron 2
Inside neutron 2Inside neutron 2
Inside neutron 2
 
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoTLet's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux Networking
 
Embedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debuggingEmbedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debugging
 
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
BPF  & Cilium - Turning Linux into a Microservices-aware Operating SystemBPF  & Cilium - Turning Linux into a Microservices-aware Operating System
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
 
Kubernetes Networking 101
Kubernetes Networking 101Kubernetes Networking 101
Kubernetes Networking 101
 
Ipv6
Ipv6Ipv6
Ipv6
 
Настройка маршрутизаторов Juniper серии MX
Настройка маршрутизаторов Juniper серии MXНастройка маршрутизаторов Juniper серии MX
Настройка маршрутизаторов Juniper серии MX
 
Multicast for ipv6
Multicast for ipv6Multicast for ipv6
Multicast for ipv6
 
Intro to GitOps & Flux.pdf
Intro to GitOps & Flux.pdfIntro to GitOps & Flux.pdf
Intro to GitOps & Flux.pdf
 
OpenTelemetry For Architects
OpenTelemetry For ArchitectsOpenTelemetry For Architects
OpenTelemetry For Architects
 
Netflow slides
Netflow slidesNetflow slides
Netflow slides
 
Comparison of existing cni plugins for kubernetes
Comparison of existing cni plugins for kubernetesComparison of existing cni plugins for kubernetes
Comparison of existing cni plugins for kubernetes
 
IPV6 ADDRESS
IPV6 ADDRESSIPV6 ADDRESS
IPV6 ADDRESS
 

Similaire à Creating UDP Broadcast App Using Python Socket on WIndows & Linux

Dotnet network prog_chap07
Dotnet network prog_chap07Dotnet network prog_chap07
Dotnet network prog_chap07Truong NGUYEN
 
Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015Van Phuc
 
Sharing your-internet-connection-on-linux
Sharing your-internet-connection-on-linuxSharing your-internet-connection-on-linux
Sharing your-internet-connection-on-linuxjasembo
 
Tutorial mikrotik step by step anung muhandanu
Tutorial mikrotik step by step  anung muhandanu Tutorial mikrotik step by step  anung muhandanu
Tutorial mikrotik step by step anung muhandanu theviper0308
 
Network Programming-Python-13-8-2023.pptx
Network Programming-Python-13-8-2023.pptxNetwork Programming-Python-13-8-2023.pptx
Network Programming-Python-13-8-2023.pptxssuser23035c
 
FreeSWITCH on Docker
FreeSWITCH on DockerFreeSWITCH on Docker
FreeSWITCH on Docker建澄 吳
 
Microservices using relocatable Docker containers
Microservices using relocatable Docker containersMicroservices using relocatable Docker containers
Microservices using relocatable Docker containersMauricio Garavaglia
 
An introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-REDAn introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-REDBoris Adryan
 
FreeBSD, ipfw and OpenVPN 2.1 server
FreeBSD, ipfw and OpenVPN 2.1 serverFreeBSD, ipfw and OpenVPN 2.1 server
FreeBSD, ipfw and OpenVPN 2.1 serverTomaz Muraus
 
Real-time Online Multiplayer with Godot Engine
Real-time Online Multiplayer with Godot EngineReal-time Online Multiplayer with Godot Engine
Real-time Online Multiplayer with Godot EngineFabio Alessandrelli
 
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19Jorge Morales
 
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornJDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornPROIDEA
 
Userspace drivers-2016
Userspace drivers-2016Userspace drivers-2016
Userspace drivers-2016Chris Simmonds
 
Installation Of An Iso Image Dvd
Installation Of An Iso Image DvdInstallation Of An Iso Image Dvd
Installation Of An Iso Image DvdSusan Cox
 
Putting an Apple IIgs BBS on the internet
Putting an Apple IIgs BBS on the internetPutting an Apple IIgs BBS on the internet
Putting an Apple IIgs BBS on the internetAndrew Roughan
 

Similaire à Creating UDP Broadcast App Using Python Socket on WIndows & Linux (20)

Dotnet network prog_chap07
Dotnet network prog_chap07Dotnet network prog_chap07
Dotnet network prog_chap07
 
Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015
 
Sharing your-internet-connection-on-linux
Sharing your-internet-connection-on-linuxSharing your-internet-connection-on-linux
Sharing your-internet-connection-on-linux
 
Tutorial mikrotik step by step anung muhandanu
Tutorial mikrotik step by step  anung muhandanu Tutorial mikrotik step by step  anung muhandanu
Tutorial mikrotik step by step anung muhandanu
 
Tcpip Intro
Tcpip IntroTcpip Intro
Tcpip Intro
 
Network Programming-Python-13-8-2023.pptx
Network Programming-Python-13-8-2023.pptxNetwork Programming-Python-13-8-2023.pptx
Network Programming-Python-13-8-2023.pptx
 
FreeSWITCH on Docker
FreeSWITCH on DockerFreeSWITCH on Docker
FreeSWITCH on Docker
 
FreeSWITCH on Docker
FreeSWITCH on DockerFreeSWITCH on Docker
FreeSWITCH on Docker
 
Microservices using relocatable Docker containers
Microservices using relocatable Docker containersMicroservices using relocatable Docker containers
Microservices using relocatable Docker containers
 
An introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-REDAn introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-RED
 
FreeBSD, ipfw and OpenVPN 2.1 server
FreeBSD, ipfw and OpenVPN 2.1 serverFreeBSD, ipfw and OpenVPN 2.1 server
FreeBSD, ipfw and OpenVPN 2.1 server
 
Windows 10
Windows 10Windows 10
Windows 10
 
IPAddressing .pptx
IPAddressing .pptxIPAddressing .pptx
IPAddressing .pptx
 
Real-time Online Multiplayer with Godot Engine
Real-time Online Multiplayer with Godot EngineReal-time Online Multiplayer with Godot Engine
Real-time Online Multiplayer with Godot Engine
 
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
Put the dev back in devops - Cloud-native at local speed! - RH Summit 19
 
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik DornJDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
JDD2014: Docker.io - versioned linux containers for JVM devops - Dominik Dorn
 
Userspace drivers-2016
Userspace drivers-2016Userspace drivers-2016
Userspace drivers-2016
 
Installation Of An Iso Image Dvd
Installation Of An Iso Image DvdInstallation Of An Iso Image Dvd
Installation Of An Iso Image Dvd
 
Putting an Apple IIgs BBS on the internet
Putting an Apple IIgs BBS on the internetPutting an Apple IIgs BBS on the internet
Putting an Apple IIgs BBS on the internet
 
Tutorial mikrotik step by step
Tutorial mikrotik step by stepTutorial mikrotik step by step
Tutorial mikrotik step by step
 

Plus de Dony Riyanto

KNIME For Enterprise Data Analytics.pdf
KNIME For Enterprise Data Analytics.pdfKNIME For Enterprise Data Analytics.pdf
KNIME For Enterprise Data Analytics.pdfDony Riyanto
 
Implementasi Teknologi Industri 4.0 pada TNI AD
Implementasi Teknologi Industri 4.0 pada TNI ADImplementasi Teknologi Industri 4.0 pada TNI AD
Implementasi Teknologi Industri 4.0 pada TNI ADDony Riyanto
 
Blockchain untuk Big Data
Blockchain untuk Big DataBlockchain untuk Big Data
Blockchain untuk Big DataDony Riyanto
 
Mengenal ROS2 Galactic
Mengenal ROS2 GalacticMengenal ROS2 Galactic
Mengenal ROS2 GalacticDony Riyanto
 
Membuat Desain Roket Amatir dan Menjalankan Simulasi
Membuat Desain Roket Amatir dan Menjalankan SimulasiMembuat Desain Roket Amatir dan Menjalankan Simulasi
Membuat Desain Roket Amatir dan Menjalankan SimulasiDony Riyanto
 
Desain ground control & Sistem Pendukung untuk Male UAV/UCAV
Desain ground control & Sistem Pendukung untuk Male UAV/UCAVDesain ground control & Sistem Pendukung untuk Male UAV/UCAV
Desain ground control & Sistem Pendukung untuk Male UAV/UCAVDony Riyanto
 
Application Performance, Test and Monitoring
Application Performance, Test and MonitoringApplication Performance, Test and Monitoring
Application Performance, Test and MonitoringDony Riyanto
 
Cloud Service Design for Computer Vision, Image & Video Processing+Analytics
Cloud Service Design for Computer Vision, Image & Video Processing+AnalyticsCloud Service Design for Computer Vision, Image & Video Processing+Analytics
Cloud Service Design for Computer Vision, Image & Video Processing+AnalyticsDony Riyanto
 
RealNetworks - SAFR Platform Whitepaper
RealNetworks - SAFR Platform WhitepaperRealNetworks - SAFR Platform Whitepaper
RealNetworks - SAFR Platform WhitepaperDony Riyanto
 
Dl6960 Demo Software User's Guide v1.4
Dl6960 Demo Software User's Guide v1.4Dl6960 Demo Software User's Guide v1.4
Dl6960 Demo Software User's Guide v1.4Dony Riyanto
 
Review of Existing Response System & Technology.
Review of Existing Response System & Technology.Review of Existing Response System & Technology.
Review of Existing Response System & Technology.Dony Riyanto
 
Beberapa Studi Kasus Fintech Micro Payment
Beberapa Studi Kasus Fintech Micro PaymentBeberapa Studi Kasus Fintech Micro Payment
Beberapa Studi Kasus Fintech Micro PaymentDony Riyanto
 
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANG
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANGRencana Pengembangan REST API dan Microservice pada MONEVRISBANG
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANGDony Riyanto
 
Implementasi Full Textsearch pada Database
Implementasi Full Textsearch pada DatabaseImplementasi Full Textsearch pada Database
Implementasi Full Textsearch pada DatabaseDony Riyanto
 
Beberapa strategi implementasi open api untuk legacy system existing app
Beberapa strategi implementasi open api untuk legacy system existing appBeberapa strategi implementasi open api untuk legacy system existing app
Beberapa strategi implementasi open api untuk legacy system existing appDony Riyanto
 
Pengenalan Big Data untuk Pemula
Pengenalan Big Data untuk PemulaPengenalan Big Data untuk Pemula
Pengenalan Big Data untuk PemulaDony Riyanto
 
Introduction to BACnet: Building Automation & Control Network
Introduction to BACnet: Building Automation & Control NetworkIntroduction to BACnet: Building Automation & Control Network
Introduction to BACnet: Building Automation & Control NetworkDony Riyanto
 
Enterprise Microservices
Enterprise MicroservicesEnterprise Microservices
Enterprise MicroservicesDony Riyanto
 
Edge Exploration of QR Code Technology Implementation
Edge Exploration of QR Code Technology ImplementationEdge Exploration of QR Code Technology Implementation
Edge Exploration of QR Code Technology ImplementationDony Riyanto
 
GUGUS-a mini program prototype
GUGUS-a mini program prototypeGUGUS-a mini program prototype
GUGUS-a mini program prototypeDony Riyanto
 

Plus de Dony Riyanto (20)

KNIME For Enterprise Data Analytics.pdf
KNIME For Enterprise Data Analytics.pdfKNIME For Enterprise Data Analytics.pdf
KNIME For Enterprise Data Analytics.pdf
 
Implementasi Teknologi Industri 4.0 pada TNI AD
Implementasi Teknologi Industri 4.0 pada TNI ADImplementasi Teknologi Industri 4.0 pada TNI AD
Implementasi Teknologi Industri 4.0 pada TNI AD
 
Blockchain untuk Big Data
Blockchain untuk Big DataBlockchain untuk Big Data
Blockchain untuk Big Data
 
Mengenal ROS2 Galactic
Mengenal ROS2 GalacticMengenal ROS2 Galactic
Mengenal ROS2 Galactic
 
Membuat Desain Roket Amatir dan Menjalankan Simulasi
Membuat Desain Roket Amatir dan Menjalankan SimulasiMembuat Desain Roket Amatir dan Menjalankan Simulasi
Membuat Desain Roket Amatir dan Menjalankan Simulasi
 
Desain ground control & Sistem Pendukung untuk Male UAV/UCAV
Desain ground control & Sistem Pendukung untuk Male UAV/UCAVDesain ground control & Sistem Pendukung untuk Male UAV/UCAV
Desain ground control & Sistem Pendukung untuk Male UAV/UCAV
 
Application Performance, Test and Monitoring
Application Performance, Test and MonitoringApplication Performance, Test and Monitoring
Application Performance, Test and Monitoring
 
Cloud Service Design for Computer Vision, Image & Video Processing+Analytics
Cloud Service Design for Computer Vision, Image & Video Processing+AnalyticsCloud Service Design for Computer Vision, Image & Video Processing+Analytics
Cloud Service Design for Computer Vision, Image & Video Processing+Analytics
 
RealNetworks - SAFR Platform Whitepaper
RealNetworks - SAFR Platform WhitepaperRealNetworks - SAFR Platform Whitepaper
RealNetworks - SAFR Platform Whitepaper
 
Dl6960 Demo Software User's Guide v1.4
Dl6960 Demo Software User's Guide v1.4Dl6960 Demo Software User's Guide v1.4
Dl6960 Demo Software User's Guide v1.4
 
Review of Existing Response System & Technology.
Review of Existing Response System & Technology.Review of Existing Response System & Technology.
Review of Existing Response System & Technology.
 
Beberapa Studi Kasus Fintech Micro Payment
Beberapa Studi Kasus Fintech Micro PaymentBeberapa Studi Kasus Fintech Micro Payment
Beberapa Studi Kasus Fintech Micro Payment
 
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANG
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANGRencana Pengembangan REST API dan Microservice pada MONEVRISBANG
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANG
 
Implementasi Full Textsearch pada Database
Implementasi Full Textsearch pada DatabaseImplementasi Full Textsearch pada Database
Implementasi Full Textsearch pada Database
 
Beberapa strategi implementasi open api untuk legacy system existing app
Beberapa strategi implementasi open api untuk legacy system existing appBeberapa strategi implementasi open api untuk legacy system existing app
Beberapa strategi implementasi open api untuk legacy system existing app
 
Pengenalan Big Data untuk Pemula
Pengenalan Big Data untuk PemulaPengenalan Big Data untuk Pemula
Pengenalan Big Data untuk Pemula
 
Introduction to BACnet: Building Automation & Control Network
Introduction to BACnet: Building Automation & Control NetworkIntroduction to BACnet: Building Automation & Control Network
Introduction to BACnet: Building Automation & Control Network
 
Enterprise Microservices
Enterprise MicroservicesEnterprise Microservices
Enterprise Microservices
 
Edge Exploration of QR Code Technology Implementation
Edge Exploration of QR Code Technology ImplementationEdge Exploration of QR Code Technology Implementation
Edge Exploration of QR Code Technology Implementation
 
GUGUS-a mini program prototype
GUGUS-a mini program prototypeGUGUS-a mini program prototype
GUGUS-a mini program prototype
 

Dernier

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 

Dernier (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 

Creating UDP Broadcast App Using Python Socket on WIndows & Linux

  • 1. Creating UDP Broadcast App Using Python Socket on Windows & Linux Dony Riyanto June 2021 Telegram: @donyriyanto slideshare.net/donyriyanto
  • 2.
  • 4. Notes: • SO_REUSEPORT enable port reusage so we will be able to run multiple clients and servers on single (host, port). Do not use socket.SO_REUSEADDR except you using linux(kernel<3.9): goto https://stackoverflow.com/questions/14388706/how-do-so- reuseaddr-and-so-reuseport-differ for more information. • For linux hosts all sockets that want to share the same address and port combination must belong to processes that share the same effective user ID! So, on linux(kernel>=3.9) you have to run multiple servers and clients under one user to share the same (host, port). Thanks to @stevenreddie • For Windows OS, it is important to bind it to network interface IP.
  • 6. Testing Local Laptop Windows 7 192.168.1.19 PC Windows 7 192.168.1.12 VM in PC Ubuntu 18 192.168.1.11 (bridge) Local Area Network Succesfully on the same host
  • 7. Testing Local Laptop Windows 7 192.168.1.19 PC Windows 7 192.168.1.12 VM in PC Ubuntu 18 192.168.1.11 (bridge) Local Area Network Succesfully on the different host, same OS version, LAN over WiFi
  • 8. Testing Local Laptop Windows 7 192.168.1.19 PC Windows 7 192.168.1.12 VM in PC Ubuntu 18 192.168.1.11 (bridge) Local Area Network Succesfully on the different host, different OS, accros bridge network driver, LAN over WiFi