diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eaa8a93 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +diagrams/*.png diff --git a/diagrams/Makefile b/diagrams/Makefile new file mode 100644 index 0000000..7c9cbe7 --- /dev/null +++ b/diagrams/Makefile @@ -0,0 +1,9 @@ +DIAGRAMS = xmidt-architecture.png \ + +all : $(DIAGRAMS) + +clean : + rm $(DIAGRAMS) + +%.png : %.ditaa + ditaa -E $< $@ diff --git a/diagrams/xmidt-architecture.ditaa b/diagrams/xmidt-architecture.ditaa new file mode 100644 index 0000000..e5453ca --- /dev/null +++ b/diagrams/xmidt-architecture.ditaa @@ -0,0 +1,94 @@ + + + +------------------------------+ + |c9D9 issuer.xmidt.example.com | + +-----------------+------------+ + | + | +=--------------------------------------------------------------------+ + | | | + | | MSO Specific | + | | /------------\ | + | | | | | + | | /---------\ /-+----------\ | | + | | | | |c99D | | : + | | /-+-------\ | /------->| API JWT | |<---------------------------------\ + Present credentials | | |c99D | | | | Issuer +-/ : | + to get JWT describing | | | CPE JWT | | | | | | | + access rules. | | | Issuer +-/ | \------------/ | | + /---------------------------|-------->| | | | | + | | | \---------/ | | | + | | | | | | | + | | +----------=|=-------------------------=|=----------------------------+ | + | | | | | + | | | | | + | +----------=|=--------------------------|=----------------------------+ | + | | | | | | + | | | Public | | | + | | Public JWT | | | + | | JWT Keys /----------------\ | | | + | | Keys | | +---------|---> Other Services | + | | | | /-+--------------\ +---------|---> Other Services | + +=-------------------------------------------------------------|=------+ | | | |c9D9 | +---------|--------------------\ | + | | | | | | | Caduceus | | | | | | + | /------\ /--------------\ | | | | | /------------------->| Notification +-/ | | | | + | |cDB9 | |cD99 | | | | | | | | | Provider | | | | | + | | CCSP |<---->| Parodus2ccsp |<----->| | | | | | | | | | | | | + | | Bus | | | | | | | | | | \----------------/ | | | | + | | | \--------------/ | | | | | | | ^ | | | | + | \------/ | | | | | | | | | | | | + | /--------------\ | | | | | | | | | | | | + | |cD99 | | | | | | | | v | | | | + | | Video Client |<----->| | | | \---\ | \--------------\ /-----------\| | | | + | | Adapter | | | | : | | API | |c9D9 || | | | + | | | | | | | | | Authorization | | AWS || | | | + | \--------------/ | | | | | | | | SNS || | | | + | | | | | | | | | || | | | + | /---------------\ | | | | | | | \-----------/| | | | + | |cDB9 | | | | | | | | ^ | | | | + | | Other Adapter |<----->| | | | | | | | | | v v + | | | | | | | | | | | | | /------------\ + | \---------------/ | | | | v | v v | | | | + | | | | | /--------------+----\ /----------------\ : | /-+----------\ | + | /--------------\ | | | : | | | | | | |cD99 | | + | |cDB9 | | | | | /-+-----------------\ | /-+--------------\ |<--------|----------->| Upstream | | + | | Parodus2snmp |<----->| | | | |c9D9 | | HTTP |c9D9 | | : | | Service +-/ + | | | | | | | | Talaria | |<------------\ | Scytale | | | | | | + | \--------------/ | | | | /->| WSS Connection | | Redirected| | External API | | : | \------------/ + | | | | | | | Manager +-/ | | Provider +-/ | | + | | | | | | | | | | | | | + | | | | | | | \-------------------/ | \----------------/ | | + | | | | | | | ^ | ^ | | + | | | | | | | | | || | | + | | | | | | | \-------------\ | || | | + | | | : | | | | | || | | + | | | : | | | v | |: | | + | | | | | | | /-----------\ | || | | + | | | | | | | /-------------\ |c9D9 | | || | | + | | | | | | | | | | Zookeeper | | || | | + | /-----------\ | v | | : | /-+-----------\ |<-->| Ensemble | \--------/| | | + | |cDB9 | | /-------------+----\ | | | | |c9D9 | | | | | | | + | | WiFi |<----->| |c9D9 | | HTTP Redirected | | ---/ | Petasos +-/ \-----------/ | | | + | | Harvester | | | Parodus |<-----------------------|---------->| HTTP | | | | + | | | |<---->| (nanomsg broker) | | Secure Websocket | | | Redirector |<------------------------------/ | | + | \-----------/ | | | | | | | | | | + | | \------------------/ | | | \-------------/ | | + | /------\ | | | | | | + | |cDB9 | | | | : | | + | | Aker |<----->| | | +----- XMiDT Server Cluster =-----------------------------------------+ | + | | | | | | | + | \------/ : +-----------------+------------+ +---------------+-----------+ + : | |c9D9 fabric.xmidt.example.com | |c9D9 api.xmidt.example.com | + +=--------------- RDK on a CPE Device ---------------------------------+ +------------------------------+ +---------------------------+ + + + + + +----------------------------------+ + Legend |cD99 Upstream Service Component | Notes: All data paths are HTTPS except Scytale <----> Petasos. + +----------------------------------+ + |c9D9 Xmidt Service Component | + +----------------------------------+ + |cDB9 RDK Service Component | + +----------------------------------+ + |c99D MSO Specific Component | + +----------------------------------+