출처 : Napatech DN-1185 문서 참조 

* 한글번역본은 번역자료에 Napatech 디렉토리에서 확인 하시면 됩니다.

SOLUTION DESCRIPTION

4x TRex Performance Increase for Tx & Rx Napatech Link™ Capture Software for Intel® PAC with Intel Arria® 10 GX FPGA

Testing and validating network performance is of the utmost importance to network equipment manufacturers, operators and owners. In the past, the traditional approach to testing network performance was based on proprietary traffic generators. But while such solutions have indeed proved efficient for a long series of use cases, they either fall short or prove massively cost prohibitive when it comes to complex and realistic traffic generation.

To manage the cumulating density of functionalities and workloads, the industry now demands a testing regime that not only delivers outstanding performance – but also offers better scalability and drastic cost improvements.

TRex

TRex is an open source traffic generator developed specifically to address these shortcomings through an innovative and extendable software implementation. What differentiates TRex is its portability, cost, capacity and flexibility.

As for any other traffic generation solution, the ability for TRex to reliably generate packets at line rate across all packet sizes is paramount. Whether simply packet blasting or replaying PCAP files for testing, the ability to send traffic for small packets at the maximum speed is a prerequisite.

Traffic reception is also of critical importance. The ability to receive the generated traffic once it has traversed the Device Under Test (DUT) is the only way of measuring the effectiveness of the solution. If the traffic reception does not match the generation capabilities, testing is compromised as one cannot identify if it is the DUT that is dropping traffic or the test equipment itself.

Accelerated

TRex performance In addressing this challenge, Napatech has created a hardware acceleration solution that greatly increases TRex performance. This has been achieved by making the Napatech Link™ Capture Software available as an Acceleration Stack for the Intel® Programmable Acceleration Card (PAC) with Intel Arria® 10 GX FPGA.

Optimized for lossless transmit and receive, the solution demonstrates substantial performance advantages for TRex compared to a standard Network Interface Card (NIC):
• 2x traffic generation performance
• 4x traffic reception performance

Turning acceleration into value

These performance advantages ultimately allow you to:
• Maximize your server performance by improving CPU utilization
• Minimize your TCO by reducing number of servers, thus optimizing rack space, power, cooling and operational expenses
• Diminish your time-to-resolution, thereby enabling greatly increased efficiency

TRex generates layer 4-7 traffic based on pre-processing and smart replay of real traffic templates. TRex amplifies both client and server-side traffic. When running on the Intel PAC with Napatech Link™ Capture Software, TRex can both generate and receive traffic at 40G line rate regardless of packet size. This enables scalability both of bandwidth and feature complexities, thus providing businesses a highperformance and massively cost-efficient alternative to proprietary traffic generators.

TRex Stateless functionality includes support for multiple streams, the ability to change any packet field and provides per stream statistics, latency and jitter. Advanced Stateful functionality includes support for emulating L7 traffic with fully-featured scalable TCP layer.

Test configuration

The outstanding improvements achieved with this solution were demonstrated by comparing TRex performance running on a Dell PowerEdge R740 with a standard 40G NIC card and the Intel PAC. Test configuration: dual-socket Dell R740 with Intel® Xeon® Gold 6138 2.0 GHz, 128GB RAM running CentOS 7.5.

Key solution features

• Line rate network throughput for all packet sizes
• Lossless capture for perfect inspection and detection
• Onboard packet buffering during micro-burst or PCI Express bus congestion scenarios
• Advanced host memory buffer management for ultra-high CPU cache performance
• Packet classification, match/action filtering and zero-copy forwarding
• Intelligent and flexible load distribution to as many as 64 queues improving CPU cache performance by always delivering the same flows to the same cores

Napatech Link™ Capture Software for Intel® PAC

The Intel® Programmable Acceleration Card (PAC) with Intel Arria® 10 GX FPGA is a PCIe-based FPGA accelerator card for data centers supporting both inline and lookaside acceleration.

As the leader in FPGA-based SmartNIC software and hardware, Napatech has made its Link™ Capture Software available as an Acceleration Stack for the Intel PAC.

Napatech’s Reconfigurable Computing Platform flexibly offloads, accelerates and secures open, standard, high-volume and low-cost server platforms allowing them to meet the performance requirements for networking, communications and cybersecurity applications.

TRex

TRex is an ideal example of the type of critical enterprise security application that can achieve better performance through hardware acceleration with the Intel PAC and Napatech dataplane software.

TRex is an open source, low cost, stateful and stateless traffic generator. Typical use cases include:

• Creating high scale benchmarks for stateful networking gear, e.g. firewalls, DPI, IPS and load balancers
• Simulating high scale DDOS attacks
• Performing high scale, flexible testing for switches
• Performing scale tests for huge numbers of clients/ servers for controller-based testing
• Performing EDVT and production tests

TRex can be compiled with native support for hardware acceleration based on the Intel hardware and Napatech software. Instructions specific to building TRex with support for Napatech are listed in the Installation Quick Guide available at the Napatech Documentation Portal.


 

출처 : https://developer.cisco.com/site/trex/discover/overview/


TRex

Traffic generator

TRex DPDK에 의해 힘입어 오픈 소스, 저비용, 상태 저장(stateful) 및 상태 비저장(stateless) 트래픽 생성기입니다.
Stateful 모드에서는 사전 처리(pre-processing)를 기반으로 클라이언트 및 서버 측 L4-7 트래픽을 생성합거나 실제 트래픽 템플릿의 스마트 재생을 합니다.
Stateless 모드에서는 라인 속도로 여러 스트림을 생성 할 수 있고, 스트림 당 또는 인터페이스 당 통계를 계산할 수 있습니다.

Stateful

·         Intel DPDK 1/10/40Gbps interface support
·         High scale of realistic traffic, up to 200Gb/sec with one Cisco UCS
           ( 1개의 Cisco UCS 최대 200Gb/sec, 높은 수준의 현실적인 traffic  생성 )
·         Latency/Jitter measurements
·         Flow ordering checks
·         NAT, PAT dynamic translation learning
·         Python automation API

 

Stateless

·         High scale - line rate 14MPPS per core, linear scale with number of cores
          (
높은 스케일 - 코어 14MPPS, 코어 수가linear scale )
·         Support 1/10/40 Gb/sec interfaces
·         인터페이스에 다중 트래픽 프로파일을 설정해서 사용할 수 있습니다.
·         트래픽 프로필은 다중 스트림을 지원할 수 있습니다. 병렬로 10K 스트림으로 확장
·         각각의 스트림
         o Packet 템플릿 - Scapy 사용하여 모든 패킷을 빌드하는 가능 (e.g. MPLS/IPv4/Ipv6/GRE/VXLAN/NSH)
            - 조작된 패킷(malformed packets) 생성이 가능합니다.
         o Field engine program
            - 패킷내에 모든 필드를 변경할 수 있습니다. 예를들어, src_ip = 10.0.0.1-10.0.0.255
            -
 패킷 사이즈를 변경할 수 있습니다. (e.g. Random packet size 64-9K)
         o Mode - Continuous/Burst/Multi burst support
         o Rate can be specified in (pps/bps/percentage)
         
Support HLTAPI like profile definition
         
Action- stream can trigger a stream      
·         Interactive support- Fast Console, GUI
·         Statistic per interface/per stream\
·         Latency and Jitter per stream
·         Blazing fast Automation support
·         Python Client API
·          Multi user support







DPDK(Data Plane Development Kit) 소개

DPDK는 다양한 CPU 아키텍처에서 실행되는 패킷 처리 작업을 가속화하는 라이브러리로 구성된 데이터 플레인 개발 키트(Data Plane Development Kit)입니다.
사람들이 통신하는 방식에 네트워크가 기본이 되는 세계에서 무선 코어 및 액세스, 유선 인프라, 라우터, 로드 밸런서, 방화벽, 비디오 스트리밍, VoIP 등과 같은 애플리케이션에 성능, 처리량 및 대기 시간이 점점 더 중요 해지고 있습니다.
DPDK는 매우 빠른 패킷 처리를 가능하게 함으로써 통신 업계가 모바일 네트워크 용 백본 및 클라우드로에서 음성 처리와 같은 성능에 민감한 응용 프로그램을 이동할 수 있게합니다.
또한 원래 ETSI NFV White Paper 에서 NFV (Network Functions Virtualization)를 위한 핵심 기술을 가능케 하는 것으로 확인되었습니다.

DPDK의 역사

DPDK 2010 년에 Intel에서 제작되었으며 허용 된 오픈 소스 라이선스에 따라 사용할 수 있습니다.
오픈 소스 커뮤니티는 2013 6WIND에 의해 DPDK.org에 설립되었으며 프로젝트의 지속적인 확장을 촉진했습니다.
그 이후로 커뮤니티는 기여자들, 패치 그리고 기여 조직에 관심으로 지속적으로 성장해 왔으며 5 개 주요 릴리스는 25 개 서로 다른 조직의 160 명 이상이 인원이 참여하여 완성되었습니다.
DPDK는 이제 여러 공급 업체의 모든 주요 CPU 아키텍처와 NIC를 지원하므로 여러 플랫폼에서 사용이 가능한 응용 프로그램에 이상적입니다.

특징 

DPDK는 빠른 패킷 처리를위한 일련의 라이브러리 및 드라이버입니다.
DPDK는 다양한 CPU 아키텍처에서 실행되는 패킷 처리 작업을 가속화하는 라이브러리로 구성된 데이터 플레인 개발 키트입니다.

  • 모든 프로세서에서 실행되도록 설계됨

  • 대부분 Linux 사용자 환경에서 실행됨

  • DPDK 오픈 소스 BSD 라이센스가 부여된 프로젝트

Architecture

 

안정화 릴리즈( Stable Release)

안정화 릴리스의 지침을 설명하는 문서 페이지가 따로 있습니다안정적 포인트 릴리즈는 메인라인 릴리즈에 따른다.
-rc 태그 후와 최종 버전 후에, 관련 버그 수정은 안정적 유지관리자에 의해 "버스트"에서 각각의 분기점으로 되돌아간다.
개발자는 stable@dpdk.org에만 패치를 보내 특정 패치를 제공할 수 있다( dev@dpdk.org는 피함).
관련 버그 수정이 모두 분기점으로 되돌간 후 회귀 테스트가 실행되고 명확한 경우 안정화 릴리스가 발표됩니다.
일반적으로 새로운 안정화 버전은 테스트 결과에 따라 메인라인 릴리즈  1-2 주 정도 후 발표됩니다.

스케쥴

19.08 

  • Proposal deadline: June 3, 2019
    Integration deadline: July 1, 2019
    Release: August 1, 2019

19.11 

  • Proposal deadline: September 6, 2019
    Integration deadline: October 11, 2019
    Release: November 8, 2019

출처 : DPDK 공식 홈페이지 내용 https://www.dpdk.org/

 

Home - DPDK

DPDK China · June 24th, 2019 Shanghai, China Attend DPDK China, co-located with Kubecon+CloudNativeCon+Open Source Summit, June 24th, 2019. Let’s discuss the present and future, including DPDK roadmap suggestions, container networking, P4, hardware acceler

www.dpdk.org

 

아래 7월5일 현재 Coverage Map은 현재 5G 기지국이 설치되어 5G 서비스를 이용할 수 있는 지역입니다.
아직 수도권과 광역시 중심지를 제외하고 아직 설치가 되지 않은 지역이 많습니다.

통신3사 5G Coverage Map

아래 링크에서 통신사별 5G Coverage를 확인 할 수 있습니다. 뿐만아니라 기존 4G(LTE), Wifi 등도 조회가 가능합니다.

SKT  :  http://www.sktcoverage.com
KT  :  https://coverage.kt.com/
LG U+ : http://www.uplus.co.kr/css/iner/RetrieveCoverMapNoneSSL.hpi

현재가 KT의 경우는 5G 커버리지 현황에서 개통된 기지국 개수를 아래와 같이 고지하고 있지만 SKT, LGU+는 관련 정보를 찾을 수 없어서 정확한 내용을 확인하기 어렵습니다.


아래 내용은 한겨레 신문 6월12일 기사에서 LTE 기지국과 5G 기지국 설치대수를 비교한 자료입니다.
기사 내용에서 보면 현재 LTE 기지국 수에 비해 현저히 떨어지고 있으며 정부가 기준으로 삼은 전체 기지국 45만국(각사 15만국)의 13% 수준이라고 합니다.
기지국당 송수신 장치도 통상 3개가 필요하지만 아직까지는 2.3개에 그치고 있으며 현재 발표한 6만여 기지국 또한 앞으로 구축될 기지국 수까지 포함되었다고 합니다. 또한 실내 중계기의 경우 현재 개발 중에 있는 것으로 되어있습니다. 

참고 : http://www.hani.co.kr/arti/economy/it/897620.html

위 내용대로 계산을 하면 하반기에는 전반기 설치된 기지국 수에 약 7배의 설치가 이루어져야만 정부 권고수에 만족하는 5G 기지국이 설치될 수 있을것으로 생각합니다.

아래 Table은 올초 기사에서 나온 5G 기지국 구축 계획안 입니다.
2019년~2023년까지 5년간의 계획에 대해서 정부 발표자료입니다. 여기서 위의 기사 내용과 기지국 수가 다른점은 투자 계획이 조금 바뀌었을 가능성도 있지만 아래 표는 실내 기지국에 대해서는 구축 수에 포함하지 않은 것으로 생각됩니다.

 

출처 : https://en.wikipedia.org/wiki/Data-rate_units

전송단위

데이터 전송률 (DTR)은 주어진 시간에 한 위치에서 다른 위치로 이동하는 디지털 데이터의 양입니다.
데이터 전송 속도는 한 곳에서 다른 곳으로 주어진 양의 데이터 이동 속도로 볼 수 있습니다. 일반적으로 주어진 경로의 대역폭이 클수록 데이터 전송률이 높아집니다.

통신에서 데이터 전송률은 데이터 전송 시스템의 통신 링크를 통과하는 평균 비트 수 (비트 전송률), 문자 또는 기호 (전송 속도) 또는 단위 시간당 데이터 블록입니다.

일반적인 데이터 속도 단위는 초당 비트 수 (bit/s)와 초당 바이트 수 (B/s)입니다.
예를 들어, 현대의 주 고속 인터넷 연결의 데이터 속도는 일반적으로 초당 메가 비트 (Mbit/s)로 표시됩니다.


네트워크 처리량(Throughput)을 이야기할 때는 초당 데이터 패킷 (p/s 또는 pps)을 사용하기도 합니다.

처리량(throughput)은 일반적으로 초당 비트 (bit/s 또는 bps)로 측정되며 때로는 초당 데이터 패킷 (p/s 또는 pps) 또는 시간 슬롯 당 데이터 패킷(data packets per time slot) 으로 측정됩니다.

다음은 일반적으로 통용되는 통신속도에 대한 단위들입니다. 

  • bps(bit per second) : 초당 전송되는 bit 수, 통신기기의 속도를 나타낼때 주로 사용됨
  • BPS(Byte per second) : 초당 전송되는 Byte 수, 자료의 전송 때 주로 사용됨, 1 Byte는 8bits 이다.
  • cps(character per second) : 초당 전송되는 Character(문자)의 수, 하나의 character는 8bits로 Byte와 같은 의미이지만 앞뒤 start/stop bit를 전송시 추가되므로 총 10bits로 보아야함.  
  • pps(packet per second) : 초당 패킷수, 네트워크 성능 측정 단위, 1초동안 보낼 수 있는 패킷 측정

PPS ( Packet Per Second )와 bps에 대한 계산 방법은 다른 글에서 다루는 것으로 하겠습니다.

CPS 자료 출처 : https://www.computerhope.com/jargon/c/cps.htm

모바일 웹 ( Mobile Web )은 우리가 흔히 접속하는 웹페이지(Webpage)입니다.
홈페이지라고도 말하는 인터넷 브라우저를 통해서 흔히 접속해서 사용하는 방식이라고 생각하면 됩니다.

앱과 어플은 Application의 줄임말로 같은 의미의 말입니다.
앱은 영어 Application에서 앞의 App만을 줄여서 쓴말이고, 어플은 한글 어플리케이션 발음에서 앞 두글자를 줄여서 사용한 것이라고 합니다.
따라서, 앱과 어플은 같은 뜻이지만 어플은 한글에서 줄임말이므로 외국사람에게 어플은 모르는 말이 될 수 있습니다.
외래어 표준어는 '앱' or '어플리케이션'으로 사용하사는 것이 표준어 입니다.
'어플'은 단지 사람들 사이에서 사용되는 비표준어 입니다.

[네이버 사전 결과]

- 앱 application
[명사]  전산 컴퓨터의 운영 체제에서 실행되는 모든 응용 소프트웨어. (=응용 프로그램)

- 어플
[명사]  '앱(application)'의 비표준어.

라즈베리파이 작업을 위해서 납땜없이 GPIO나 Sensor들을 제어하기 위해서 필수적으로 필요한 부품입니다.
혹시, 처음 Breadboard란 것을 알았다면 아래 Wiki 내용을 한번 읽어 보시기 바랍니다.

https://ko.wikipedia.org/wiki/%EB%B8%8C%EB%A0%88%EB%93%9C%EB%B3%B4%EB%93%9C

브레드보드(빵판)는 아래와 같은 구조로 내부적으로 연결되어 있습니다.
파랑/빨강색 라인은 전원을 사용하고 초록색 라인은 저항, 센서 등 소자를 연결해서 사용하는 것으로 생각하면 됩니다.

브레드보드는 위에서 있는것과 같이 내부 연결 방향만 아시면 대부분은 사용하는데 문제가 없을 것으로 생각합니다.
혹시, 더 자세한 내용을 알고 싶으신 경우에는 아래 Link를 참고하시면 좋을 것 같습니다.
설명이 너무 잘되어 있습니다. 알고 있었던 내용이라도 다시 보게되니 아~ 이랬구나 하는 생각이 들었습니다.

https://binworld.kr/13

 

브레드보드(BreadBoard) 사용법 - 전자회로

브레드보드가 무엇일까요? 브레드보드(breadboard), 속칭 빵판 또는 빵틀은 전자 회로의 (일반적으로 임시적인) 시제품을 만드는 데 사용하는 재사용할 수 있는 무땜납 장치이다. 이것은 영구적이거나 1회용 시제..

binworld.kr

* 실제 연결해서 사용하는 내용은 센서 사용 및 제어하는 내용을 다룰 때 사진이나 체결 방법 설명으로 대체할 수 있을 것 같습니다.


 

출처 : https://www.raspberrypi.org/blog/introducing-noobs/


라즈베리 파이의 시작하는 사람이라면 모든 것이 훨씬 쉬울 것입니다
.

우리는 이 프로젝트를 시작했는데, 스포츠에 비유를 하자면 사람들을 깊은 곳에 던져 넣고 장애물을 뛰어넘게 하는 것을 전제로 해서, 그들이 뭔가를 배우게 하는 것이었습니다.
그렇스빈다. 그것은 어떤 사람들을 때때로 그만두게 마지막으로 내 몰수도 있습니다.
하지만, 우리는 5 분 후에 사람들을 라스베리 파이 공포에 빠뜨리길 원치 않습니다.
그래서 이것을 염두에 두고 우리는 NOOBS를 소개하려고 합니다.

NOOBS는 처음으로 훨씬 더 쉽게 라즈베리 파이를 설정하는 방법입니다네트워크 액세스가 필요하지 않으므로 특별한 이미징 소프트웨어를 다운로드 할 필요가 없습니다그냥 다운로드 페이지로 가서 NOOBS zip 파일의 복사본을 가져 와서 새로 포맷 된 4GB (또는 더 큰) SD 카드에 압축을 풉니다처음으로 부팅 할 때 여러 운영 체제 중 하나를 카드의 여유 공간에 설치하라는 메시지가 표시됩니다선택은 Raspbian과 같은 일반 운영 체제 또는 RaspBMC와 같은 특정 미디어 센터OS Pi를 부팅 할 수 있음을 의미합니다.

Editing config.txt

운영 체제를 설치하면 Pi가 정상적으로 부팅됩니다.
그러나, NOOBS는 카드에 상주해 있으므로 부팅하는 동안 시프트를 누르고 있으면 언제든 복구 인터페이스로 돌아갈 수 있습니다. 이렇게 하면 다른 운영 체제로 전환하거나 손상된 카드를 최신 운영 체제로 새로 덮어 쓸 수 있습니다. 또한 현재 설치된 운영 체제의 config.txt 구성 파일을 편집 할 수 있는 편리한 도구를 제공하며, 또한 만약 막히는게 있다면 웹 브라우저를 사용하여 포럼이나 Google에서 포인터를 찾아 볼 수도 있습니다.

Editing config.txt
Viewing the forums in the Arora browser


Rob, Gordon, Dom Floris ( BerryBoot Fame )는 모두 함께 한 달 안에 NOOBS를 처음부터 개발했습니다. 감사 드립니다. 또한, 현지화를 위한 자원 봉사자들과 운영체제 유지관리자분들에게도 감사드립니다. 특히 최종 zip 파일에 통합하기 위해 제 시간에 업데이트 된 이미지를 생성해준 Alex에게 감사 드립니다.
우리 파트너들은 가까운 미래에 NOOBS가 설치 되어진 SD 카드를 제공 할 예정이지만, 그때까지 직접 다운로드 하여 사용해주시고 당신이 생각하는 것들을 우리에게 알려주십시요.

6 4일 업데이트 : Geek Gurl Diaries Carrie Anne Philbin이 지신이 NOOBS 설치 방법을 보여주는 Turorial 비디오를 만들었습니다. Carrie Anne에게 감사 드립니다 !


 

+ Recent posts