SlideShare a Scribd company logo
1 of 50
IP Multicast Application Development BOF Bob Quinn Stardust Technologies, Inc. February 8, 1998
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
IP Multicast is... ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
IP Multicast in Action Multicast Sender Multicast Routers Data Replicated Multicast Receivers Entities: Actions: Single Data Send Data Propagated to Receivers Data Pruned where no Receivers
Multicast Application Categories ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Multicast Application Sketches ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Original Multicast API ,[object Object],[object Object],[object Object],[object Object]
Join Multicast Group ,[object Object],[object Object],[object Object],Int setsockopt( SOCKET s, int level, int optname,  const char FAR*optval, int optlen); /* The structure used to add and drop multicast addresses  */ typedef struct ip_mreq { struct in_addr imr_multiaddr;  /* multicast group to join */ struct in_addr imr_interface;  /* interface to join on */ }IP_MREQ;
IGMP v1 in Action ,[object Object],[object Object],Muliicast Receiver joins group Multicast Router stores multicast address Router protocol shares group membership info with other routers. IGMP  Host Membership Report  (type = 2) sent to group address when application joins group 0 32 8 16 24 version type <unused> checksum Multicast Group Address
IGMP v1 in Action ,[object Object],Muliicast Receiver joins group Multicast Router stores multicast address After random timer expires and  no other responses seen,group  member responds with another Host Membership Report After timeout, Router checks for current members by sending Host Membership Query  (type=1)  to “All Hosts” group (224.0.0.1)
Other Sockets Multicast APIs ,[object Object],[object Object],[object Object],[object Object],[object Object]
Multicast API Subtleties ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sample  Multicast Applications ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Get a UDP socket ,[object Object],[object Object],/* Get a datagram socket */ hSocket = socket(AF_INET,  SOCK_DGRAM, 0); if (hSocket == INVALID_SOCKET) { printf (&quot;socket() failed, Err: %d&quot;, WSAGetLastError()); return(-1); }
Name the socket ,[object Object],[object Object],/* Name the socket (assign port number to receive on) */ stLclAddr.sin_family  = AF_INET; stLclAddr.sin_addr.s_addr = htonl(INADDR_ANY); stLclAddr.sin_port  = htons(nPort); nRet = bind(hSocket,  (struct sockaddr*) &stLclAddr,  sizeof(stLclAddr)); if (nRet == SOCKET_ERROR) { printf (&quot;bind() port: %d failed, Err: %d&quot;,  nPort, WSAGetLastError()); }
Join the Multicast Group ,[object Object],[object Object],/* Join the multicast group so we can receive from it */ stMreq.imr_multiaddr.s_addr = inet_addr(achMCAddr); stMreq.imr_interface.s_addr = INADDR_ANY; nRet = setsockopt(hSocket,  IPPROTO_IP,  IP_ADD_MEMBERSHIP,  (char *)&stMreq,  sizeof(stMreq)); if (nRet == SOCKET_ERROR) { printf(&quot;IP_ADD_MEMBERSHIP address %s failed, Err: %d&quot;, achMCAddr, WSAGetLastError()); }
Receive Multicast Data ,[object Object],for (;;) { int addr_size = sizeof(struct sockaddr_in); nRet = recvfrom(hSocket, achInBuf, BUFSIZE, 0, (struct sockaddr*)&stSrcAddr, &addr_size); if (nRet < 0) { printf (&quot;recvfrom() failed, Error: %d&quot;, WSAGetLastError()); break; } << process data received >> } /* end for(;;) */
Leave the Multicast Group ,[object Object],[object Object],/* Leave the multicast group */ stMreq.imr_multiaddr.s_addr = inet_addr(achMCAddr); stMreq.imr_interface.s_addr = INADDR_ANY; nRet = setsockopt(hSocket,  IPPROTO_IP, IP_DROP_MEMBERSHIP,  (char *)&stMreq, sizeof(stMreq)); if (nRet == SOCKET_ERROR) { printf (&quot;IP_DROP_MEMBERSHIP address %s failed, Err: %d&quot;, achMCAddr, WSAGetLastError()); }   /* Close the socket */ closesocket(hSocket);
In the Sender... ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],/* Set IP TTL to traverse up to multiple routers */ nRet = setsockopt(hSocket,  IPPROTO_IP,  IP_MULTICAST_TTL,  (char *)&lTTL,  sizeof(lTTL)); if (nRet == SOCKET_ERROR) { printf (&quot;setsockopt() IP_MULTICAST_TTL failed, Err: %d&quot;, WSAGetLastError()); }
Disable Loopback ,[object Object],[object Object],/* Disable loopback */ fFlag = FALSE; nRet = setsockopt(hSocket,  IPPROTO_IP,  IP_MULTICAST_LOOP,  (char *)&fFlag, sizeof(fFlag)); if (nRet == SOCKET_ERROR) { printf (&quot;setsockopt() IP_MULTICAST_LOOP failed, Err: %d&quot;, WSAGetLastError()); }
Send to Multicast Address ,[object Object],[object Object],/* send to destination multicast address */ stDstAddr.sin_family =  AF_INET; stDstAddr.sin_addr.s_addr = inet_addr(achMCAddr); stDstAddr.sin_port =  htons(nPort); nRet = sendto(hSocket,  (char *)&achBuf,  sizeof(achBuf), 0, (struct sockaddr*)&stDstAddr,  sizeof(stDstAddr)); if (nRet < 0) { printf (&quot;sendto() failed, Error: %d&quot;, WSAGetLastError()); }
IGMP v2 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
IGMP V2 ,[object Object],[object Object],[object Object],[object Object],[object Object],0 32 8 16 24 type Max respns time checksum Multicast Group Address IP Router Alert option (RFC 2113) enabled in all messages
Other APIs ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Multicast Application Similarities & Differences ,[object Object],[object Object],[object Object],[object Object],[object Object]
Range of Application Requirements ,[object Object],Delay In tolerant Delay Tolerant Loss Tolerant Loss  In tolerant Audio/Video  Conferencing Distributed Interactive  Simulations Audio/Video  Streaming File Distribution Non-Essential Data:  -  Headline News, - Sports Scores - Weather Updates - Session Directories Stock Info  & Online  Auction Whiteboard  Sharing Resource  Discovery
QoS  not  tied to Multicast ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Reliability Requirements ,[object Object],[object Object],[object Object]
Can Reliable Multicast Protocols use TCP model? ,[object Object],[object Object],Multicast sender  sends a single message Multicast receivers  simultaneously respond with a storm of ACKs
Multicast protocols  are Receiver-Based ,[object Object],[object Object],Multicast sender  sends a single message Multicast receivers  respond with NAKs (only) when they detect missing data
Shared Recovery ,[object Object],[object Object],[object Object],[object Object],[object Object]
Local Recovery ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Local Recovery in Action Multicast Sender Multicast Routers 3) Data Retransmitted by Recovery Designates Multicast Receivers Entities: Actions: 1) NAK Sent by Receivers after missing data detected 2) NAK detected by Recovery Designates Local Recovery Designates
Send Redundant Data ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FEC techniques Data 7 Data 5 Data 3 Data 1 Data 2 ta 4  6 D Dat  Data 8 “ Striped” Data Data 7 Parity4 Data with Parity Data 6 Parity3 Data 5 Parity2 Data 4 Parity1 These representations are simplified versions of the real thing and there are many different algorithms, but these give some FEC techniques.  Notice that data is spread over time,  to avoid fate sharing (due to burst errors). time time
Rate Adaptive ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Send Layered Data ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Reliable Multicast Transports - A Summary ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Other Issues  with Multicast ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Solutions in the works ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More Multicast Infrastructure ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
IGMP v3 ,[object Object],[object Object],[object Object],[object Object],[object Object],int IPMulticastListen(socket, interface, // interface as in m_req multicast-address, // group address as in m_req filter-mode, // INCLUDE or EXCLUDE source-list); // list (<64) of source addresses
Domain-Wide Group Membership Reports ,[object Object],[object Object]
Multicast Address Management Protocols ,[object Object],[object Object],[object Object],[object Object],[object Object]
Multicast Address Management Architecture MDHCP router MASC router Multicast Address Domain MASC  to other Domains Client Client Server listening on well-known multicast address MDHCP  Unicast MDHCP  Multicast AAP  or other protocols provide address ranges See http://north.east.isi.edu/malloc/ for more information
MDHCP APIs ,[object Object],[object Object],int MDhcpEnumerateScopes( IN OUT SCOPE *ScopeList, IN OUT int *ScopeListLen,   OUT int *ScopeCount); typedef struct scope { int  ScopeId, IP_ADDR ServerIpAddress; STRING ScopeDescription; } SCOPE;
MDHCP APIs ,[object Object],[object Object],int MDhcpRequestAddress( IN OUT REQUEST_ID *RequestUID, IN  SCOPE *Scope, IN  LEASE_INFO  *AddrRequest, IN OUT LEASE_INFO  *AddrResponse); typedef struct lease_info { TIME  StartTime, TIME EndTime, int TTL; int AddrCount; IP_ADDR Address[1]; } LEASE_INFO;
MDHCP APIs ,[object Object],[object Object],int MDhcpRenewAddress( IN OUT REQUEST_ID *RequestUID, IN  SCOPE *Scope, IN  LEASE_INFO  *RenewRequest, IN OUT LEASE_INFO  *RenewResponse); int MDhcpReleaseAddress( IN OUT REQUEST_ID *RequestUID, IN  SCOPE *Scope, IN  int *ReleaseRequest);
Conclusions ,[object Object],[object Object],[object Object],[object Object],[object Object]
References ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

What's hot (16)

DMVPN configuration - Configuring Cisco dynamic Multipoint VPN - HUB, SPOKES,...
DMVPN configuration - Configuring Cisco dynamic Multipoint VPN - HUB, SPOKES,...DMVPN configuration - Configuring Cisco dynamic Multipoint VPN - HUB, SPOKES,...
DMVPN configuration - Configuring Cisco dynamic Multipoint VPN - HUB, SPOKES,...
 
IPTables Primer - Part 2
IPTables Primer - Part 2IPTables Primer - Part 2
IPTables Primer - Part 2
 
Network testing course
Network testing courseNetwork testing course
Network testing course
 
Multipath TCP Upstreaming
Multipath TCP UpstreamingMultipath TCP Upstreaming
Multipath TCP Upstreaming
 
Ipsec vpn v0.1
Ipsec vpn v0.1Ipsec vpn v0.1
Ipsec vpn v0.1
 
Multicast eng
Multicast engMulticast eng
Multicast eng
 
ACIT - CCNA Training India - VPN
ACIT - CCNA Training India - VPNACIT - CCNA Training India - VPN
ACIT - CCNA Training India - VPN
 
C# Advanced L08-Networking+WCF
C# Advanced L08-Networking+WCFC# Advanced L08-Networking+WCF
C# Advanced L08-Networking+WCF
 
05 06 ike
05   06 ike05   06 ike
05 06 ike
 
Cisco CCNA GRE Tunnel Configuration
Cisco CCNA GRE Tunnel ConfigurationCisco CCNA GRE Tunnel Configuration
Cisco CCNA GRE Tunnel Configuration
 
1cospf
1cospf1cospf
1cospf
 
VRRP (virtual router redundancy protocol)
VRRP (virtual router redundancy protocol)VRRP (virtual router redundancy protocol)
VRRP (virtual router redundancy protocol)
 
CCNAS :Multi Area OSPF
CCNAS :Multi Area OSPFCCNAS :Multi Area OSPF
CCNAS :Multi Area OSPF
 
CCNA pptCCNA ppt Day 6
CCNA pptCCNA ppt Day 6CCNA pptCCNA ppt Day 6
CCNA pptCCNA ppt Day 6
 
CCNP Route EIGRP Overview
CCNP Route  EIGRP OverviewCCNP Route  EIGRP Overview
CCNP Route EIGRP Overview
 
Ospf.ppt
Ospf.pptOspf.ppt
Ospf.ppt
 

Similar to IPv4 Multicast Application Development

TCP IP
TCP IPTCP IP
TCP IPhivasu
 
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SPKrzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SPPROIDEA
 
Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm Abdullaziz Tagawy
 
Asa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problemsAsa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problemsIT Tech
 
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 FinalExploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Finalmasoodnt10
 
presentation_3597_1473326800.pdf
presentation_3597_1473326800.pdfpresentation_3597_1473326800.pdf
presentation_3597_1473326800.pdfAakashchaudhary89
 
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)Jakub Botwicz
 

Similar to IPv4 Multicast Application Development (20)

TCP IP
TCP IPTCP IP
TCP IP
 
Basic socket programming
Basic socket programmingBasic socket programming
Basic socket programming
 
IP Multicasting
IP MulticastingIP Multicasting
IP Multicasting
 
Socket programming
Socket programming Socket programming
Socket programming
 
6.Routing
6.Routing6.Routing
6.Routing
 
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SPKrzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
 
Np unit2
Np unit2Np unit2
Np unit2
 
TCP/IP Basics
TCP/IP BasicsTCP/IP Basics
TCP/IP Basics
 
Md13 networking
Md13 networkingMd13 networking
Md13 networking
 
Troubleshooting basic networks
Troubleshooting basic networksTroubleshooting basic networks
Troubleshooting basic networks
 
Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm Solving QoS multicast routing problem using aco algorithm
Solving QoS multicast routing problem using aco algorithm
 
Asa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problemsAsa pixfwsm multicast tips and common problems
Asa pixfwsm multicast tips and common problems
 
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 FinalExploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
Exploiting Network Protocols To Exhaust Bandwidth Links 2008 Final
 
Networking chapter VI
Networking chapter VINetworking chapter VI
Networking chapter VI
 
Network Sockets
Network SocketsNetwork Sockets
Network Sockets
 
Sockets
Sockets Sockets
Sockets
 
28 networking
28  networking28  networking
28 networking
 
presentation_3597_1473326800.pdf
presentation_3597_1473326800.pdfpresentation_3597_1473326800.pdf
presentation_3597_1473326800.pdf
 
Unit 8 Java
Unit 8 JavaUnit 8 Java
Unit 8 Java
 
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
Cotopaxi - IoT testing toolkit (Black Hat Asia 2019 Arsenal)
 

Recently uploaded

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

IPv4 Multicast Application Development

  • 1. IP Multicast Application Development BOF Bob Quinn Stardust Technologies, Inc. February 8, 1998
  • 2.
  • 3.
  • 4. IP Multicast in Action Multicast Sender Multicast Routers Data Replicated Multicast Receivers Entities: Actions: Single Data Send Data Propagated to Receivers Data Pruned where no Receivers
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33. Local Recovery in Action Multicast Sender Multicast Routers 3) Data Retransmitted by Recovery Designates Multicast Receivers Entities: Actions: 1) NAK Sent by Receivers after missing data detected 2) NAK detected by Recovery Designates Local Recovery Designates
  • 34.
  • 35. FEC techniques Data 7 Data 5 Data 3 Data 1 Data 2 ta 4 6 D Dat Data 8 “ Striped” Data Data 7 Parity4 Data with Parity Data 6 Parity3 Data 5 Parity2 Data 4 Parity1 These representations are simplified versions of the real thing and there are many different algorithms, but these give some FEC techniques. Notice that data is spread over time, to avoid fate sharing (due to burst errors). time time
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45. Multicast Address Management Architecture MDHCP router MASC router Multicast Address Domain MASC to other Domains Client Client Server listening on well-known multicast address MDHCP Unicast MDHCP Multicast AAP or other protocols provide address ranges See http://north.east.isi.edu/malloc/ for more information
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.