Security Level: 客 户 伙 伴 在 右 35pt B0 体 : ium rial 32pt B0 体 based Scalable Video Conferencing on Virtual Edge Service Routers (VSER) Platform 配 色 建 议 不 超 以 下 方 案 内 只 用 22pt 色 体 : ular rial Asit Chakraborti, Aytac Azgin, Ravi Ravindran, G. Q. Wang www.huawei.com 20pt 色 体 Version: V1.1
Agenda Mo*va*on VSER Pla2orm Conferencing over VSER Pla2orm More on the Conferencing applica*on Results Improving the VSER Pla2orm Page 2
Mo*va*on Service from the Edge [1] Service- centric Compute, Storage and Bandwidth scaling Tailor services to locality and user context (mobility, social parameters) Minimize latency and jieer Avoid backbone boelenecks Deployment [1] Caching and aggregahon at the Edge has already been shown to be effechve Names for service/content/device enable context aware network PotenHal for new business models for network operators NFV/SDN programmability Enables service and network virtualizahon Allows management of services as well as network [1] Xuan Liu at al Towards sovware defined based edge- cloud services 2013 IEEE CloudNet Page 3
Virtual Service Edge Router Pla2orm Objec*ve: A Virtualized Edge Router to host several Services Service OrchestraHon layer for Service Control + Management Implementa*on: CCN based SoVware Router, with Virtualized Service Plugins Service controller applicahons manage service logic. CCN service layer components extends to the User EnHty for service interachon. Usage: Supports both real- Hme and non- real Hme services Page 4
Virtual Service Edge Router High Level View VSER App SAL A- UNI Services Service Hypervisor Router (CCN) Service Orchestrator ( Cloud Controller + Network Controller) SAP Service Gateway Service- 1 Router L3/L2 C- API Service- 2 VFSR- 1 Service Profile Manager S- UNI Service Manager Service Manager Service Management ASP- 1 Service Manager ASP- 2 ASP- 3 VSER Pla2orm Highlights Service Edge Router Non- proprietary Pla2orm Overlay deployment of Op*mized sosware stack including Mul*- threaded CCNx Service Management by OpenStack and FloodLight Service Discovery, Service/ Network Programmability Generalized to any service, real- *me (conferencing, IOT) or non real- *me (content delivery) Platform API - UE Edge- Cloud SAP Service Gateway Service- 1 Service- 2 VFSR- 2 Router L3/L2 Page 5
VSER Pla2orm: Service Virtualiza*on VM- 1 ( Service- 1) VM- 2 Service- 2 VM- 3 Service- 3 Router VSER Service Controller Service- 1 Mgr VM- 1 ( Service- 1) Dash Board Network Controller Service- 1 App. Controller. Service- 2 Mgr Service- 2 App Controller VM- 2 Service- 2 VM- 3 Service- 3 Router Service- 3 Mgr Service- 3 App Controller. VM- 1 ( Service- 1) Router VM- 2 Service- 2 VM- 3 Service- 3 VSER Services are Based Storage VSER Services can be anything: Real- *me (E.g. Conferencing ), Non- Real *me (VoD, M2M) The VM s interconnect at specific applica*on/service level, Router helps with Name based Rou*ng, Caching, Mul*cas*ng Page 6
Current Conferencing Technology Conferencing Servers Hot Links Data Centers Conference ParHcipants Edge Edge Core Edge Today a conferencing is typically scaled using a network of servers in the network. Unicast - Number of streams in the network is s*ll O(N^2) and poten*ally traverse many bo^leneck links. Page 7
Large Scale Mul*- Media Conferencing Large scale conferencing is a problem due to session and state complexity. We realize a network based conferencing system on the VSER pla2orm. Includes conference framework: Client- Agent, Proxy, and Conference Controller. The conference framework modules only synchronize digests among par*cipants, the data is mul*cast in the data plane Central Conference server Server- less control (NDN Chronos, 2012) VSER Based Services (Proxy + Controller) MulH- layered push based architecture for name sync Current IP (server- centric) NDN prior art (server- less data plane) IP Router IP Router IP Router Page 8
Conferencing as Virtualized Edge Service Conference Service VSER PoP ASP PoP Service OrchestraHon Conference Service Controller PoP Virtualizing CO and Regional PoPs Provision conference service points at the network edge Scales Compu*ng/Bandwidth More bandwidth saving without expensive/proprietary MCU Data Streams are aggregated by CCN Virtualize Regional PoP or Central Offices (CO) Page 9
BYOD Enterprise Conferencing Conf Client Conf Client Push NoHficaHons/Heartbeat/Recovery Content Interest/Data SAL SAL Conference Proxy VSER Conference Controller Conference Proxy Conference Proxy VSER Conference Proxy VSER Plahorm Service Controller Network Controller Conference Controller ApplicaHon Plahorm The conference framework can handle mul*ple conference instances simultaneously. Handling session disrup*on of UE should be easy using digest logs at Proxy and Controller The Conf. Controller Applica*on handles events due to Par*cipant Join/Leave, Load balancing etc. [1] Ravi Ravindran et al, Towards SoSware Defined based Edge Cloud Service, IEEE, CloudNet, 2013
Conerence state management P 1 P 2 P 3 U 1 U 2 U 3 U 5 U 4 Logic connechvity at t 3 (steady state) New join at t 4 Current Digest Tree U 1,0 Digest Tree Log U 1,0 P 1,2 P 1,2 U 2,0 Current Digest @ U 1 <G1,3>, U 2,0 U 2,0 G 1,3 G 1,3 P 2,1 P 2,1 P 1,1 U 1,0 Digest Tree at the proxy 1 Gproxy- id,state- seq: The root digest that indicates the global state P proxyid,state_seq : The digest at the proxy represenhng the local state U userid, update_seq : The user fingerprint that represents current update G 1,2 Log @ U 1 P 2,1 t 4 : G 1,3 : U 2,0 t 3 : G 1,2 : U 3,0 t 2 : G 1,1 : U 1,0 t 1 : G 1,0 : U 1,0 t 0 : G0,0 P 1,1 G 1,1 U 1,0 P 2,0 P 1,0 G 1,0 P 2,0 New join at t 5 Digest Tree & Log Examples
No*fica*on and namespace No*fica*ons are at the core of the conferencing service Represents the state change of a parhcipant Pushed by the conferencing service to all parhcipants Useful for recovery and history Can be used at different granularity q q q A new nohficahon for every text chat entry A new nohficahon every Hme an i- frame is available A new nohficahon indicahng audio/video Hmestamp every few seconds video block chunk ts usr media VSER Conf1 audio block ts Page 12
Audio Video Transport Encoder/ Decoder CCNx Transport NoHficaHons status update, A/V metadata VSER framework Audio and Video chunks Encoder/ Decoder NoHficaHons status update, A/V metadata v0 v1 a0 a1../v0/1/..../v0/2/..../a0/..../a1/.. Interest namespace based on in- band [1] and out of band (nohficahon) informahon../v1/0/.. Content chunks Video frames Audio frames Video chunks Audio chunks [1] Peter Gusev et al NDN- RTC Page 13
Intelligent data- path management by VSER: Minimizing bandwidth VSER1 Conference Service Controller Other parhcipants Conference room 1 Set VSER controlled context aware FIB entries for local high bandwidth (video) data? VSER2 Conference room 2 CCN aggregator for heavy concentrahon of parhcipants, require one or dynamically elect one by VSER? Page 14
Results for Video Conferencing over VSER Pla2orm [1] Test Setup Problems: 1. Audio & Sync 2. Frame Transport 3. NoHficaHon dependence 4. Bandwidth management 5. De- jieer buffer [1] Anil Jangam et al Real- Hme MulH- party Video Conferencing Service over InformaHon Centric Network MuSIC 2015 Page 15
VSER Pla2orm: Mul*- core SoSware Router CS/PIT (Core 1) FIB CS/PIT (Core 2) CS/PIT (Core 3) CCN Packet Dispatcher Eth/IP 4x10Gbps 2 Processor Xeon (2.9Ghz), SDRAM: 128GB Running TLV based implementa*on Page 16
Mul*- threaded SoSware Router Problems with the current ccnd implementa*on Compute- intensive and runs single threaded, many cores under- uhlized Represents significant boeleneck on a high performance router with mulhple 10GbE links We need to parallelize ccnd by defining subtasks Dispatcher, responsible for packet I/O, with one thread per interface Core- ccnx (ccnx- Threads), which divides enhre namespace [1] into sub- namespaces and assigns one thread per sub- namespace Need to op*mize linux for 10GbE opera*on Global FIB, but per core thread PIT/CS InvesHgaHng distributed FIB Inves*ga*ng impact of queues between threads [1] Won So et al, Name Data Networking on a Router: Fast and DoS Resistent Forwarding with Hash Tables, ANCS, 2013
Mul*- Threaded Design Interface1 Interface2... mxm Direct Memory Access Main Router Process Dispatcher Threads Ccnx threads Hash content name and assign to thread Forward Interest or Respond with Data Hash content name and assign to thread Forward Interest or Respond with Data... ccnxt1 ccnxt2 Check CS/PIT for existing entries, create component hashes, and perform forwarding lookup... Remote Hosts VSER Service VSER Service Interfacem Hash content name and assign to thread Forward Interest or Respond with Data ccnxtn