SlideShare a Scribd company logo
TIPC
Status and Roadmap 2021
by Jon Maloy
STATUS OCTOBER 2020
FUNCTIONALITY
Container/Name Space support
→ From Linux 4.0
Autoadaptive Hierarchical Neighbor Node monitoring
→ Scales up to 1000 nodes with 1 second failure discovery time
→ From Linux 4.7
Group Messaging
→ User instantiated brokerless message bus
→ Allows for lossless, flow controlled, broadcast/multicast/anycast/unicast within a group
→ From Linux 4.14
128-bit self-assigned node identity
→ Can optionally be assigned by user: integer number, UUID, host name…
→ From Linux 4.16
Moved away from <Zone,Cluster,Node> network and addressing hierarchy
→ A node now only has an identity with no assumed internal structure
→ All node using the same cluster identity will detect each other and form a cluster
→ From Linux 4.16
Extensive Tracing Support
→ From Linux 4.20
FUNCTIONALITY
Introduced 'Smart Nagle' mechanism
→ Switches itself on/off depending on the traffic characteristics
→ Doubles stream socket throughput for small message traffic
→ From Linux 5.4
Built-in AEAD-based Encryption/Authentication Support
→ AES-GCM (Like in TLS 1.3)
→ Transparent to user, no application change needed
→ Works even for multicast, without requiring message replication
→ From Linux 5.4
‘Wormhole' inter-name space communication mechanism
→ Messages take a shortcut, bypassing network interfaces, between containers located on the same host.
→ Gives inter-container traffic the same performance as normal intra-container traffic
→ Much better throughput and latency than TCP
→ 100% secure
→ From Linux 5.4
Introduced variable window link flow control mechanism
→ Based on TCP’s Reno algorithm
→ Gives 25% improvement of max link throughput. (Jon Maloy/Xin Long, Linux 5.5
→ From Linux 5.5
Broadcast Binding Table Updates
→ When network infrastructure so permits
→ From Linux 5.8
API
Low-level socket API
→ Needs some effort to learn and use
Higher-level socket C API exists
→ As static libtipc library
→ Still only available by downloading tipcutils tar file
APIs for Python, Java, GO, Perl, Ruby, D
Support for TIPC in ZeroMQ
→ Not yet with full features
AVAILABILITY
Management tool now in package iproute2
→ “tipc” replaces previously used “tipc-config”
→ Available in all new distros after May 2015
Kernel module available in all major distros
→ Inclusive RHEL 8
IMPLEMENTATION
Significant effort to improve quality and maintainability over the last years
→ Reduced code bloat
→ Reduced structure interdependencies
→ Improved locking policies
→ Fewer locks, RCU locks instead of RW locks…
→ Eliminated all known risks of deadlock
→ Buffer handling
→ Much more use of sk_buff lists and other linux features
→ Improved and simplified fragmentation/reassembly
→ Redesigned and simplified broadcast link resulting in a significant performance improvement
→ Simplified and de-generalized topology server
Linuxification of code and coding style
→ Adapting to kernel naming conventions
→ Using RB tree instead of expanding arrays in service binding table
FLOW CONTROL
New connection level flow control
→ Now based on roundup(1k) size block instead of messages
→ Reduces need for socket receive buffer with factor 30
Link level flow control still uses a small fix window by default
→ Not optimal from performance viewpoint
→ Configurable
Datagram flow control
→ Resolved as part of the Group Communication feature
SCALABILITY
Introduced the “Overlapping Ring Supervision” algorithm in Linux 4.7
→ A combination of Gossip and Ring Supervision
→ Largest cluster we have tested had 800 fully-meshed nodes
→ But more is possible
→ Works flawlessly
New flat address space
→ Moved from <Zone.Cluster.Node> address scheme to a flat 128-bit identity space
# tipc node set addr 1.1.1 (Deprecated. Mandatory before Linux 4.18.)
# tipc node set identity myhostname (Optional. From Linux 4.18. Self assigned if not set.)
PERFORMANCE
Latency times better than on TCP
→ ~33 % faster inter-node
→ 2 to 7 times faster intra-node messaging (depends on message size)
→ We don’t use the loopback interface
→ From Linux 5.4 we do this even with inter container messages on same host
→ “Wormhole” technique
→ Just as secure as going via an interface
→ Kubernetes Pods will benefit greatly from this
Throughput lower than TCP on bare metal and between VMs
→ ~65-90% of max TCP throughput inter-node
→ Seems to be environment dependent, notably due to TCP TSO
Thoughput 25-400% better than TCP intra-node/inter-container on same host
→ 4 times better than TCP when using “wormhole” technique between containers on same host
→ New “smart nagle” feature from Linux 5.4 improves small message throughput with 50-100%
→ Turns itself on an off depending on traffic pattern
→ No ACK delay problem as in TCP
MANAGEMENT
Netlink based API
→ Replaces old ascii-based commands (also via netlink)
→ Uses more standard features such as socket buffers, attribute nesting, sanity checks etc.
→ Scales much better when clusters grow
New user space tool “tipc”
→ Syntax inspired by “ip” tool
→ Modular design inspired by git
→ Uses libmnl
→ Replaces deprecated “tipc-config” tool
→ Part of iproute2 package
→ Along with “ip”, “tc” and others
ROADMAP 2021
FUNCTIONALITY
128-bit service and socket addresses
→ All fields 128 bits long
→ Possible, but intrusive change
Try it out in Kubernetes
→ Inter- and intra-pod messaging
Built-in consensus protocol for topology events
→ RAFT or Blockchain based?
struct tipc_addr{
char type[16]; // zero: socket addess, otherwise random
char instance[16]; // e.g. uuid, port number if socket address
char node[16]; // zero: whole cluster is lookup scope
};
MORE INFORMATION
TIPC Overview
https://www.slideshare.net/JonMaloy/tipc-overview-93483595
TIPC Communication Groups
https://www.slideshare.net/JonMaloy/tipc-communication-groups
TIPC Overlapping Ring Neighbor Monitoring
https://www.youtube.com/watch?v=ni-iNJ-njPo
TIPC home page
http://tipc.io
TIPC project page
https://sourceforge.net/projects/tipc
TIPC protocol specification (needs update)
http://tipc.sourceforge.net/doc/draft-spec-tipc-10.html
TIPC programmer’s guide (needs update)
http://tipc.sourceforge.net/doc/tipc_2.0_prog_guide.html
TIPC demo and test programs package
https://sourceforge.net/projects/tipc/files/?source=navbar
THANKYOU

More Related Content

What's hot

OSPF Basics
OSPF BasicsOSPF Basics
OSPF Basics
Martin Bratina
 
Dpdk applications
Dpdk applicationsDpdk applications
Dpdk applications
Vipin Varghese
 
MPLS
MPLSMPLS
Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing
Cisco Canada
 
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDPFaster packet processing in Linux: XDP
Faster packet processing in Linux: XDP
Daniel T. Lee
 
Segment Routing
Segment RoutingSegment Routing
Segment Routing
APNIC
 
VLAN vs VXLAN
VLAN vs VXLANVLAN vs VXLAN
VLAN vs VXLAN
GLC Networks
 
BGP Advance Technique by Steven & James
BGP Advance Technique by Steven & JamesBGP Advance Technique by Steven & James
BGP Advance Technique by Steven & JamesFebrian ‎
 
CCNA CDP LLDP NTP
CCNA CDP LLDP NTP CCNA CDP LLDP NTP
CCNA CDP LLDP NTP
Networkel
 
WAN SDN meet Segment Routing
WAN SDN meet Segment RoutingWAN SDN meet Segment Routing
WAN SDN meet Segment Routing
APNIC
 
MENOG-Segment Routing Introduction
MENOG-Segment Routing IntroductionMENOG-Segment Routing Introduction
MENOG-Segment Routing Introduction
Rasoul Mesghali, CCIE RS
 
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014  Segment Routing TI-LFA Fast ReRouteMPLS WC 2014  Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
Bruno Decraene
 
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingDPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
Michelle Holley
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
Yoss Cohen
 
Ipx protocol slide share
Ipx protocol slide shareIpx protocol slide share
Ipx protocol slide share
MUHAMMED SIDIBEH
 
Multi-Area OSPF on IOS XR
Multi-Area OSPF on IOS XRMulti-Area OSPF on IOS XR
Multi-Area OSPF on IOS XR
CoderGenie Technologies
 
Alcatel lucent pt telkom turn-up guide v1
Alcatel lucent pt telkom turn-up guide v1Alcatel lucent pt telkom turn-up guide v1
Alcatel lucent pt telkom turn-up guide v1
Wahyu Nasution
 
BGP Graceful Shutdown - IOS XR
BGP Graceful Shutdown - IOS XR BGP Graceful Shutdown - IOS XR
BGP Graceful Shutdown - IOS XR
Bertrand Duvivier
 
IP Multicasting
IP MulticastingIP Multicasting
IP Multicasting
Tharindu Kumara
 

What's hot (20)

OSPF Basics
OSPF BasicsOSPF Basics
OSPF Basics
 
Dpdk applications
Dpdk applicationsDpdk applications
Dpdk applications
 
MPLS
MPLSMPLS
MPLS
 
Deploying Carrier Ethernet features on ASR 9000
Deploying Carrier Ethernet features on ASR 9000Deploying Carrier Ethernet features on ASR 9000
Deploying Carrier Ethernet features on ASR 9000
 
Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing
 
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDPFaster packet processing in Linux: XDP
Faster packet processing in Linux: XDP
 
Segment Routing
Segment RoutingSegment Routing
Segment Routing
 
VLAN vs VXLAN
VLAN vs VXLANVLAN vs VXLAN
VLAN vs VXLAN
 
BGP Advance Technique by Steven & James
BGP Advance Technique by Steven & JamesBGP Advance Technique by Steven & James
BGP Advance Technique by Steven & James
 
CCNA CDP LLDP NTP
CCNA CDP LLDP NTP CCNA CDP LLDP NTP
CCNA CDP LLDP NTP
 
WAN SDN meet Segment Routing
WAN SDN meet Segment RoutingWAN SDN meet Segment Routing
WAN SDN meet Segment Routing
 
MENOG-Segment Routing Introduction
MENOG-Segment Routing IntroductionMENOG-Segment Routing Introduction
MENOG-Segment Routing Introduction
 
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014  Segment Routing TI-LFA Fast ReRouteMPLS WC 2014  Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
 
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingDPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
 
Ipx protocol slide share
Ipx protocol slide shareIpx protocol slide share
Ipx protocol slide share
 
Multi-Area OSPF on IOS XR
Multi-Area OSPF on IOS XRMulti-Area OSPF on IOS XR
Multi-Area OSPF on IOS XR
 
Alcatel lucent pt telkom turn-up guide v1
Alcatel lucent pt telkom turn-up guide v1Alcatel lucent pt telkom turn-up guide v1
Alcatel lucent pt telkom turn-up guide v1
 
BGP Graceful Shutdown - IOS XR
BGP Graceful Shutdown - IOS XR BGP Graceful Shutdown - IOS XR
BGP Graceful Shutdown - IOS XR
 
IP Multicasting
IP MulticastingIP Multicasting
IP Multicasting
 

Similar to TIPC Roadmap 2021

Building a sdn solution for the deployment of web application stacks in docker
Building a sdn solution for the deployment of web application stacks in dockerBuilding a sdn solution for the deployment of web application stacks in docker
Building a sdn solution for the deployment of web application stacks in docker
Jorge Juan Mendoza
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDP
Thomas Graf
 
Osnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptxOsnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptx
M.Qasim Arham
 
Cloud Native Networking & Security with Cilium & eBPF
Cloud Native Networking & Security with Cilium & eBPFCloud Native Networking & Security with Cilium & eBPF
Cloud Native Networking & Security with Cilium & eBPF
Raphaël PINSON
 
Docker networking tutorial 102
Docker networking tutorial 102Docker networking tutorial 102
Docker networking tutorial 102
LorisPack Project
 
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
Adam Hamsik
 
How VXLAN works on Linux
How VXLAN works on LinuxHow VXLAN works on Linux
How VXLAN works on LinuxEtsuji Nakai
 
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Hajime Tazaki
 
Module 1 slides
Module 1 slidesModule 1 slides
Module 1 slides
AnaniaKapala
 
Some important networking questions
Some important networking questionsSome important networking questions
Some important networking questionsSrikanth
 
OpenStack Tokyo 2015: Connecting the Dots with Neutron
OpenStack Tokyo 2015: Connecting the Dots with NeutronOpenStack Tokyo 2015: Connecting the Dots with Neutron
OpenStack Tokyo 2015: Connecting the Dots with Neutron
Phil Estes
 
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
Juraj Hantak
 
Hackerworkshop exercises
Hackerworkshop exercisesHackerworkshop exercises
Hackerworkshop exercises
Henrik Kramshøj
 
Docker Multihost Networking
Docker Multihost Networking Docker Multihost Networking
Docker Multihost Networking
Nicola Kabar
 
Packet walks in_kubernetes-v4
Packet walks in_kubernetes-v4Packet walks in_kubernetes-v4
Packet walks in_kubernetes-v4
InfraEngineer
 
Mellanox Approach to NFV & SDN
Mellanox Approach to NFV & SDNMellanox Approach to NFV & SDN
Mellanox Approach to NFV & SDN
Mellanox Technologies
 
ContainerDays Hamburg 2023 — Cilium Workshop.pdf
ContainerDays Hamburg 2023 — Cilium Workshop.pdfContainerDays Hamburg 2023 — Cilium Workshop.pdf
ContainerDays Hamburg 2023 — Cilium Workshop.pdf
Raphaël PINSON
 
Simple, Scalable and Secure Networking for Data Centers with Project Calico
Simple, Scalable and Secure Networking for Data Centers with Project CalicoSimple, Scalable and Secure Networking for Data Centers with Project Calico
Simple, Scalable and Secure Networking for Data Centers with Project Calico
Emma Gordon
 
Dive into DevOps | March, Traefik as kubernetes ingress controller, Ihor Borodin
Dive into DevOps | March, Traefik as kubernetes ingress controller, Ihor BorodinDive into DevOps | March, Traefik as kubernetes ingress controller, Ihor Borodin
Dive into DevOps | March, Traefik as kubernetes ingress controller, Ihor Borodin
Provectus
 

Similar to TIPC Roadmap 2021 (20)

Building a sdn solution for the deployment of web application stacks in docker
Building a sdn solution for the deployment of web application stacks in dockerBuilding a sdn solution for the deployment of web application stacks in docker
Building a sdn solution for the deployment of web application stacks in docker
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDP
 
Osnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptxOsnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptx
 
Cloud Native Networking & Security with Cilium & eBPF
Cloud Native Networking & Security with Cilium & eBPFCloud Native Networking & Security with Cilium & eBPF
Cloud Native Networking & Security with Cilium & eBPF
 
Docker networking tutorial 102
Docker networking tutorial 102Docker networking tutorial 102
Docker networking tutorial 102
 
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
 
How VXLAN works on Linux
How VXLAN works on LinuxHow VXLAN works on Linux
How VXLAN works on Linux
 
Day-3 PowerPoint
Day-3 PowerPointDay-3 PowerPoint
Day-3 PowerPoint
 
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
Linux rumpkernel - ABC2018 (AsiaBSDCon 2018)
 
Module 1 slides
Module 1 slidesModule 1 slides
Module 1 slides
 
Some important networking questions
Some important networking questionsSome important networking questions
Some important networking questions
 
OpenStack Tokyo 2015: Connecting the Dots with Neutron
OpenStack Tokyo 2015: Connecting the Dots with NeutronOpenStack Tokyo 2015: Connecting the Dots with Neutron
OpenStack Tokyo 2015: Connecting the Dots with Neutron
 
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
4. CNCF kubernetes Comparison of-existing-cni-plugins-for-kubernetes
 
Hackerworkshop exercises
Hackerworkshop exercisesHackerworkshop exercises
Hackerworkshop exercises
 
Docker Multihost Networking
Docker Multihost Networking Docker Multihost Networking
Docker Multihost Networking
 
Packet walks in_kubernetes-v4
Packet walks in_kubernetes-v4Packet walks in_kubernetes-v4
Packet walks in_kubernetes-v4
 
Mellanox Approach to NFV & SDN
Mellanox Approach to NFV & SDNMellanox Approach to NFV & SDN
Mellanox Approach to NFV & SDN
 
ContainerDays Hamburg 2023 — Cilium Workshop.pdf
ContainerDays Hamburg 2023 — Cilium Workshop.pdfContainerDays Hamburg 2023 — Cilium Workshop.pdf
ContainerDays Hamburg 2023 — Cilium Workshop.pdf
 
Simple, Scalable and Secure Networking for Data Centers with Project Calico
Simple, Scalable and Secure Networking for Data Centers with Project CalicoSimple, Scalable and Secure Networking for Data Centers with Project Calico
Simple, Scalable and Secure Networking for Data Centers with Project Calico
 
Dive into DevOps | March, Traefik as kubernetes ingress controller, Ihor Borodin
Dive into DevOps | March, Traefik as kubernetes ingress controller, Ihor BorodinDive into DevOps | March, Traefik as kubernetes ingress controller, Ihor Borodin
Dive into DevOps | March, Traefik as kubernetes ingress controller, Ihor Borodin
 

Recently uploaded

Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Courier management system project report.pdf
Courier management system project report.pdfCourier management system project report.pdf
Courier management system project report.pdf
Kamal Acharya
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
Jayaprasanna4
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSETECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
DuvanRamosGarzon1
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfCOLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
Kamal Acharya
 
CME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional ElectiveCME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional Elective
karthi keyan
 

Recently uploaded (20)

Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Courier management system project report.pdf
Courier management system project report.pdfCourier management system project report.pdf
Courier management system project report.pdf
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSETECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfCOLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
 
CME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional ElectiveCME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional Elective
 

TIPC Roadmap 2021

  • 1. TIPC Status and Roadmap 2021 by Jon Maloy
  • 3. FUNCTIONALITY Container/Name Space support → From Linux 4.0 Autoadaptive Hierarchical Neighbor Node monitoring → Scales up to 1000 nodes with 1 second failure discovery time → From Linux 4.7 Group Messaging → User instantiated brokerless message bus → Allows for lossless, flow controlled, broadcast/multicast/anycast/unicast within a group → From Linux 4.14 128-bit self-assigned node identity → Can optionally be assigned by user: integer number, UUID, host name… → From Linux 4.16 Moved away from <Zone,Cluster,Node> network and addressing hierarchy → A node now only has an identity with no assumed internal structure → All node using the same cluster identity will detect each other and form a cluster → From Linux 4.16 Extensive Tracing Support → From Linux 4.20
  • 4. FUNCTIONALITY Introduced 'Smart Nagle' mechanism → Switches itself on/off depending on the traffic characteristics → Doubles stream socket throughput for small message traffic → From Linux 5.4 Built-in AEAD-based Encryption/Authentication Support → AES-GCM (Like in TLS 1.3) → Transparent to user, no application change needed → Works even for multicast, without requiring message replication → From Linux 5.4 ‘Wormhole' inter-name space communication mechanism → Messages take a shortcut, bypassing network interfaces, between containers located on the same host. → Gives inter-container traffic the same performance as normal intra-container traffic → Much better throughput and latency than TCP → 100% secure → From Linux 5.4 Introduced variable window link flow control mechanism → Based on TCP’s Reno algorithm → Gives 25% improvement of max link throughput. (Jon Maloy/Xin Long, Linux 5.5 → From Linux 5.5 Broadcast Binding Table Updates → When network infrastructure so permits → From Linux 5.8
  • 5. API Low-level socket API → Needs some effort to learn and use Higher-level socket C API exists → As static libtipc library → Still only available by downloading tipcutils tar file APIs for Python, Java, GO, Perl, Ruby, D Support for TIPC in ZeroMQ → Not yet with full features
  • 6. AVAILABILITY Management tool now in package iproute2 → “tipc” replaces previously used “tipc-config” → Available in all new distros after May 2015 Kernel module available in all major distros → Inclusive RHEL 8
  • 7. IMPLEMENTATION Significant effort to improve quality and maintainability over the last years → Reduced code bloat → Reduced structure interdependencies → Improved locking policies → Fewer locks, RCU locks instead of RW locks… → Eliminated all known risks of deadlock → Buffer handling → Much more use of sk_buff lists and other linux features → Improved and simplified fragmentation/reassembly → Redesigned and simplified broadcast link resulting in a significant performance improvement → Simplified and de-generalized topology server Linuxification of code and coding style → Adapting to kernel naming conventions → Using RB tree instead of expanding arrays in service binding table
  • 8. FLOW CONTROL New connection level flow control → Now based on roundup(1k) size block instead of messages → Reduces need for socket receive buffer with factor 30 Link level flow control still uses a small fix window by default → Not optimal from performance viewpoint → Configurable Datagram flow control → Resolved as part of the Group Communication feature
  • 9. SCALABILITY Introduced the “Overlapping Ring Supervision” algorithm in Linux 4.7 → A combination of Gossip and Ring Supervision → Largest cluster we have tested had 800 fully-meshed nodes → But more is possible → Works flawlessly New flat address space → Moved from <Zone.Cluster.Node> address scheme to a flat 128-bit identity space # tipc node set addr 1.1.1 (Deprecated. Mandatory before Linux 4.18.) # tipc node set identity myhostname (Optional. From Linux 4.18. Self assigned if not set.)
  • 10. PERFORMANCE Latency times better than on TCP → ~33 % faster inter-node → 2 to 7 times faster intra-node messaging (depends on message size) → We don’t use the loopback interface → From Linux 5.4 we do this even with inter container messages on same host → “Wormhole” technique → Just as secure as going via an interface → Kubernetes Pods will benefit greatly from this Throughput lower than TCP on bare metal and between VMs → ~65-90% of max TCP throughput inter-node → Seems to be environment dependent, notably due to TCP TSO Thoughput 25-400% better than TCP intra-node/inter-container on same host → 4 times better than TCP when using “wormhole” technique between containers on same host → New “smart nagle” feature from Linux 5.4 improves small message throughput with 50-100% → Turns itself on an off depending on traffic pattern → No ACK delay problem as in TCP
  • 11. MANAGEMENT Netlink based API → Replaces old ascii-based commands (also via netlink) → Uses more standard features such as socket buffers, attribute nesting, sanity checks etc. → Scales much better when clusters grow New user space tool “tipc” → Syntax inspired by “ip” tool → Modular design inspired by git → Uses libmnl → Replaces deprecated “tipc-config” tool → Part of iproute2 package → Along with “ip”, “tc” and others
  • 13. FUNCTIONALITY 128-bit service and socket addresses → All fields 128 bits long → Possible, but intrusive change Try it out in Kubernetes → Inter- and intra-pod messaging Built-in consensus protocol for topology events → RAFT or Blockchain based? struct tipc_addr{ char type[16]; // zero: socket addess, otherwise random char instance[16]; // e.g. uuid, port number if socket address char node[16]; // zero: whole cluster is lookup scope };
  • 14. MORE INFORMATION TIPC Overview https://www.slideshare.net/JonMaloy/tipc-overview-93483595 TIPC Communication Groups https://www.slideshare.net/JonMaloy/tipc-communication-groups TIPC Overlapping Ring Neighbor Monitoring https://www.youtube.com/watch?v=ni-iNJ-njPo TIPC home page http://tipc.io TIPC project page https://sourceforge.net/projects/tipc TIPC protocol specification (needs update) http://tipc.sourceforge.net/doc/draft-spec-tipc-10.html TIPC programmer’s guide (needs update) http://tipc.sourceforge.net/doc/tipc_2.0_prog_guide.html TIPC demo and test programs package https://sourceforge.net/projects/tipc/files/?source=navbar