0% found this document useful (0 votes)
293 views9 pages

Zoom System Design PDF

The document discusses the design of a video/audio conferencing system like Zoom. It outlines functional requirements like 1:1 calls, group calls, and screen sharing, as well as non-functional requirements like scalability, security, and high availability. The design approach leverages microservices architecture with domains like user management, group management, and message handling. Key protocols include WebSocket for bidirectional communication and WebRTC for real-time communication between clients and servers. Flow diagrams demonstrate 1:1 chat and video calling workflows.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
293 views9 pages

Zoom System Design PDF

The document discusses the design of a video/audio conferencing system like Zoom. It outlines functional requirements like 1:1 calls, group calls, and screen sharing, as well as non-functional requirements like scalability, security, and high availability. The design approach leverages microservices architecture with domains like user management, group management, and message handling. Key protocols include WebSocket for bidirectional communication and WebRTC for real-time communication between clients and servers. Flow diagrams demonstrate 1:1 chat and video calling workflows.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Zoom

System
Design
Sarat Kumar Magatapalli
Agenda
Functional & Non-Functional requirements

Intro to pre-requisite tools & protocols

Our design approach

Detail Design

Other aspects of design

Tuesday, February 2, 20XX Sample Footer Text 2


Video/Audio Conferencing System
Design
• Today, we will talk about how to design Video/Audio conferencing system ( example: Zoom , MS Teams,
Cisco Webex etc..)

Functional Requirements: Non-Functional Requirements:


• 1 to 1 Call • Super-fast
• Group Call • High Availability
• Audio/Video/Screen Share • Scalability ( considering current Zoom users and usage)
• Record Session • Data Loss OK
• Message Communication • Security
• Agility

Architecture Decisions / Principles:


Considering the NFR’s , we 1) Use API’s for communication
have decided to leverage the 2) When ever applicable use async communication
Event –Driven Microservices 3) Don't just confine to only RDBMS or only NO-SQL DB’s .
Architecture 4) Build system which can be extendible ( in future add
self-learning/analytical capabilities)

June 2022 3
Web Protocols (Pre-Requisite)
• WebSocket (or WebSockets) is a protocol for low latency bidirectional communication initiated via HTTP
Useful for sending and receiving data using text, binary arrays or blobs . Providing full-duplex
communication channels over a single TCP connection

Client Server

• WebRTC (Web Real-Time Communication) is a free, open-source project that provides web browsers
and mobile applications with real-time communication (RTC) via simple application programming
interfaces (APIs).
Main API’s of WebRTC :
Server

• GetUserMedia
Client Client • PeerConnection
• Data Channel
June 2022 4
Design Approach
• As we prefer to leverage Microservice Architecture , let’s use microservices concepts to identify the
services ( should adhere to Single responsibility Principle) and build a loosely-coupled System.

• Use Domain-Driven Methodology to identify the break into small modules. Here are various
domain/capabilities

User Management
Group Management
Messages Management
Record Management
Notification Management
Asset Management
WebSocket Handlers
WebSocket Management
Group Management Handlers

June 2022 5
Zoom User & Group Registration Flow

June 2022 6
Zoom 1:1 Chat Walkthru

June 2022 7
Zoom 1:1 Video Walk thru

June 2022 8
Thank You

Tuesday, February 2, 20XX Sample Footer Text 9

You might also like