5th workshop ci presen v19 æ å º - openairinterface€¦ · 20/6/2018  · iru 58 5$8 6sulqw...

18
5th OAI Workshop Improvement of OAI community value by Continuous Integration 22nd June 2018 Yoshio INOUE, FUJITSU Limited [email protected] 0 Copyright 2018 FUJITSU LIMITED

Upload: others

Post on 04-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

5th OAI Workshop

Improvement of OAI community value by Continuous Integration

22nd June 2018Yoshio INOUE, FUJITSU Limited

[email protected]

0 Copyright 2018 FUJITSU LIMITED

Page 2: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

FUJITSU Activity Aug. 2017-2017 2018

Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun

Continuous Integration(CI)framework development

Development

Sprint#1for RU-RAU

Sprint#3- TDD

configuration 1

Sprint#1- add to RRCMessages- O&M

Sprint#2- Multi Ues, - O&M- eNB Operational data collector

ExperimentEvaluation in anechoic chamber

(FDD&TDD)

FieldExperiment(FDD)

And Future aims...

Scope in this talk

introduced for development & Experiment

1

2

3

Copyright 2018 FUJITSU LIMITED1

Page 3: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Things to be done with CI during the last one month (20th Apr – 19th May)

More than 72 hours Continuous Operation

Fixed the Assertion incidents. eNB : 100 points, EPC : 50 points

Achievement of FUJITSU by CI

FDD TDD (Config1)

Frequency / Bandwidth Band3(1.7GHz) / 5MHz Band39(2.6GHz) / 5, 10, 20MHz

DL throughput 15Mbps@5MHz 27Mbps@20MHz

UL throughput 5Mbps@5MHz 10Mbps@20MHz

Num. of UEs 10 COTS UEs 5 COTS UEs64UEs, FUJITSU original simulator

Verification environment Indoor field Anechoic chamber

8,143

77,440

4,983

23,770

22010,000 20,000 30,000 40,000 50,000 60,000 70,000 80,000

Run eNB & EPC ping

iperf

Repetitive Attach / Detach

UE Reboot

Copyright 2018 FUJITSU LIMITED2

Page 4: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

What is CI (Continuous Integration)?

Quality managementfor repeatedly execute the cycle of software development(such as build, testing, deploying) frequently and quickly

Using CI tools(Automation tools)

1. Prevent being personalized

2. Early detection of disability

3. Status visualization

4. Stabilization of qualityGit Repository

Developer

Compile & testing

Test Results

Sharing results

CI

CI tools

Copyright 2018 FUJITSU LIMITED3

Page 5: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Why CI?

Code Quality Improvement Immediately tested when

MergeRequest in gitlab•No more degradation

•Easy to determine the cause

•Short debugging time (Reduce time cost)

Always tested by nightly automatic test•Short term tests again and again (dig up hidden low % bugs)

•Long term tests to ensure stability

Probably the expectation for OAI getsslightly higher than before…

CarrierGrade

Field TestGrade

Experiment / PoCGrade

ProbablyWe Are Here

Time to find and fix bugs

Cost

of C

hang

e

Fast Failure(Easy to fix)

Copyright 2018 FUJITSU LIMITED4

Page 6: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Current status

Establishment of Automatic testing framework by Jenkins

Building the framework in Eurecom

Copyright 2018 FUJITSU LIMITED5

Page 7: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Steps to improve the value of OAI

Start CI in OAI development (ASAP)Step1

Test minimum items automatically Introduce Static Analysis tool(Coverity Scan)

Step2 Release 1st features list

Update features list by adding test itemsStep3

We should stand here soon.Users are expecting!!

Keep growing with source code

We are Here

Add testable features by all developers

Reinforce master branch

Copyright 2018 FUJITSU LIMITED6

Page 8: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Reinforce master branch

Release 1st features list

Add testable features by all developers

We are Here

Steps to improve the value of OAI

Step2

Update features list by adding test itemsStep3

We should stand here early.Users are expecting!!

Keep growing with source code

Start CI in OAI development (ASAP)Step1

Test minimum items automatically Introduce Static Analysis tool(Coverity Scan)

Copyright 2018 FUJITSU LIMITED7

Page 9: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Step1-1 Test minimum items automatically

The first thing users want to see is connection with Other nodes

“Interoperability test with OAI-EPC & COTS-UE” was prepared in CITest items Deploy OAI-eNB & OAI-EPC to the specified server FDD & TDD config1 Bandwidth 5MHz/10MHz/20MHz Repeat Attach & Detach with COTS-UE Ping, UDP iperf(Downlink, Uplink) Log Collection & Simple log check

Configuration example

Ether

OAI-eNB

Ether

OAI-EPCMME / SP-GW / HSS

ADBAndroid Debug Bridge

Jenkins

GitLab

networkUSRP X310

Coaxial

USB

COTS-UEFUJITSU Arrows Series

Ether

Copyright 2018 FUJITSU LIMITED8

Page 10: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Step1-1 Evaluated features by Minimum testing

FDD / TDD Config 1/2/3Duplex mode

5MHz / 10MHz / 20MHzBandwidth

TM1 / TM2(Stable) / TM3 / TM4 / TM5 / TM6 / TM7Transmission Mode

2 / 1Num of Antenna

Verified Verified Verified

Verified

PSS / SSS / PBCH / PCFICH / PHICH / PDCCHDownlink ChannelVerified Verified Verified Verified Verified Verified

PRACH / PUSCH / PUCCH (format 1/1a/1b) / SRS / DRSUplink ChannelVerified Verified Verified

5MHz : 16~17Mbps (w/ COTS UE Cat 3/4)

Downlink Throughput10MHz : 34~35Mbps (w/ COTS UE Cat 3/4)

Verified

5MHz : 8Mbps (w/ COTS UE Cat 3/4)

Uplink Throughput10MHz : 15Mbps (w/ COTS UE Cat 3/4)

Verified

OFDMA (DL) / SC-FDMA (UL)Access schemeVerified Verified

QPSK / 16QAM / 64QAMModulationVerified Verified Verified

Verified

Connection / Paging / Release / Re-establishmentMobile terminal ControlVerified Verified

Verified

Verified

Verified

Verified

Copyright 2018 FUJITSU LIMITED9

Page 11: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

What is Static Code Analysis tool?Mechanically point out errors and vulnerabilities(e.g. Memory leak)

Why Static Code Analysis? For stability, detect bugs that can’t be detected by short-time dynamic test

Why Coverity Scan? No.1 share in US and Japan The false detection rate is less than 15%, the Pointing outs are almost bugs It is free to use for OSS

Coverity Scan’s result of OAI-RANURL : https://scan.coverity.com/projects/openairinterface5gThe Pointing outs should be fixed.

Step1-2 Introduce Static Analysis tool

Copyright 2018 FUJITSU LIMITED10

Page 12: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Add testable features by all developers

We are Here

Test minimum items automatically Introduce Static Analysis tool(Coverity Scan)

Start CI in OAI development (ASAP)

Steps to improve the value of OAI

Update features list by adding test itemsStep3

Keep growing with source code

Step1

Step2

We should stand here early.Users are expecting!!

Reinforce master branch

Release 1st features list

Copyright 2018 FUJITSU LIMITED11

Page 13: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

What is important to users?

1. Is source code working?

2. What are the working features?

3. Is the community working?

How do users evaluate above?

They look at Master branch only.

We should cherish Master branch.

Copyright 2018 FUJITSU LIMITED12

Page 14: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

1st features list?

FDD / TDD Config 1/2/3Duplex mode

5MHz / 10MHz / 20MHzBandwidth

TM1 / TM2(Stable) / TM3 / TM4 / TM5 / TM6 / TM7Transmission Mode

2 / 1Num of Antenna

Verified Verified Verified

Verified

PSS / SSS / PBCH / PCFICH / PHICH / PDCCHDownlink ChannelVerified Verified Verified Verified Verified Verified

PRACH / PUSCH / PUCCH (format 1/1a/1b) / SRS / DRSUplink ChannelVerified Verified Verified

5MHz : 16~17Mbps (w/ COTS UE Cat 3/4)

Downlink Throughput10MHz : 34~35Mbps (w/ COTS UE Cat 3/4)

Verified

5MHz : 8Mbps (w/ COTS UE Cat 3/4)

Uplink Throughput10MHz : 15Mbps (w/ COTS UE Cat 3/4)

Verified

OFDMA (DL) / SC-FDMA (UL)Access schemeVerified Verified

QPSK / 16QAM / 64QAMModulationVerified Verified Verified

Verified

Connection / Paging / Release / Re-establishmentMobile terminal ControlVerified Verified

Verified

Verified

Verified

Verified

Copyright 2018 FUJITSU LIMITED13

Page 15: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Reinforce master branch

We are Here

Test minimum items automatically Introduce Static Analysis tool(Coverity Scan)

Step2 Release 1st features list

Start CI in OAI development (ASAP)

Steps to improve the value of OAI

We should stand here early.Users are expecting!!

Keep growing with source code

Step1

Update Master branch and features listStep3

Add testable features by all developers

Copyright 2018 FUJITSU LIMITED14

Page 16: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Change to testable from implemented

Implemented

By making it always testable, the features becomes OAI value.

Tested & Testable

TESTCODE

Source : Eurecom 3rd & 4th OAI workshop

presentation doc.

Copyright 2018 FUJITSU LIMITED15

Page 17: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Challenges

Update our workflow How to validate NEW features? How to merge tests for existing and new features into CI test suite?

How to manage Master branch?

Copyright 2018 FUJITSU LIMITED16

Page 18: 5th workshop ci presen v19 æ å º - OpenAirInterface€¦ · 20/6/2018  · IRU 58 5$8 6SULQW 7'' FRQILJXUDWLRQ 6SULQW DGG WR 55& 0HVVDJHV 2 0 6SULQW 0XOWL 8HV 2 0 H1%2SHUDWLRQDO

Copyright 2018 FUJITSU LIMITED