Mesterpróba 2015
Tudományos konferencia végzős MSc és elsőéves PhD hallgatóknak Távközlés és infokommunikáció témakörében
KONFERENCIA KIADVÁNY
Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar
BUDAPEST 2015. május 29
Mesterpróba 2015
Tudományos konferencia végzős MSc és elsőéves PhD hallgatóknak Távközlés és infokommunikáció témakörében A Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kara által rendezett hallgatói konferencia, a Hírközlési és Informatikai Tudományos Egyesület tudományos bizottsága, az MTA Távközlési Tudományos Bizottsága, az IEEE Hungarian AP/ED/MTT/ComSoc/EMC chapter támogatásával. A konferencia célja kettős. Egyrészt a legjobb végzős hallgatók számára fórumot biztosít, ahol a diplomamunkájuk készítése során elért kiemelkedő eredményeiket be tudják mutatni a szélesebb szakmai közönségnek. Másrészt támogatja a tudományos indíttatású hallgatók első konferencia részvételét. A konferencia tutorial előadásai és a bírálat menete hozzásegíti a hallgatókat a tudományos konferenciák sok esetben formai, technikai - de ezzel együtt tartalmi, minőségi kérdéseket is meghatározó – elvárásainak megfelelő szintű teljesítéséhez. A benyújtott cikkeket többfordulós bírálati folyamat minősíti, ennek eredménye dönt az elfogadásról. A folyamat során a szerzők írásos visszajelzést kapnak a bírálóktól, a cikk elfogadását és a konferencián való részvételt hivatalos nyilatkozat igazolja.
Mesterpróba 2015
A KONFERENCIA TUDOMÁNYOS ÉS SZERVEZŐ BIZOTTSÁGA
Társelnökök Gerhátné Dr. Udvary Eszter (IEEE MTT/AP/ED/ComSoc/EMC Chapter, BME-HVT) Prof. Pap László (MTA TTB, HTE, BME-HIT)
Tagok Győry Erzsébet (BME-TMIT) Huszák Árpád (BME-HIT) Prof. Pávó József (Periodica Polytechnica, BME-HVT) Szalay Zoltán Attila (BME-HVT)
TÁMOGATÓK Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Hírközlési és Informatikai Tudományos Egyesület MTA Távközlési Tudományos Bizottsága IEEE Hungarian Joint AP/ED/MTT/ComSoc/EMC chapter BME – Hálózati Rendszerek és Szolgáltatások Tanszék BME – Szélessávú Hírközlés és Villamosságtan Tanszék Huawei Technologies Hungary Kft.
Mesterpróba 2015
Program
TUTORIAL 1. Molnár Sándor: Hogyan írjunk jó tudományos cikket? IDŐPONT: 2015. március 24. 14:15 HELYSZÍN: BME V1 épület, 5. emelet, 502-es terem 1111 Budapest, Egry József utca 18.
TUTORIAL 2. Elek Nikoletta, Jász Borbála: "Előadás-technikai felkészítő: nem elég okosnak lenni, annak is kell látszani" IDŐPONT: 2015. május 18. 14:15 HELYSZÍN: BME V1 épület, 5. emelet, 502-es terem 1111 Budapest, Egry József utca 18.
Mesterpróba 2015
Program
A konferencia időpontja: 2015. május 20. szerda, 9:00 – 17:30 A konferencia helye: BME V1. épület, 5. emelet, 502 terem Budapest XI. Egry József utca. 18. 9:50
Dr. Nagy Lajos
1. szekció 10:00 10:15 10:30 10:45 11:00
2. szekció 11:50 12:05
V1. 502
Szarvas Tamás Unger Tamás István Balogh András Fekete Tamás Pelle István
V1. 502
Horváth Máté Horváth Kristóf Attila
12:20
Papp Dorottya
12:35
Balogh András
12:50
Leiter Ákos
3. szekció
V1. 502
Megnyitó
elnök: Dr. Henk Tamás Optical simulation of monolithic broadband IR mirror Mágneses hiszterézis szimulációja végeselem-módszer és skalár Preisachmodell segítségével Centralization of remote control using web applications Architecture of a GPGPU-accelerated framework for pattern searching Monitoring and troubleshooting in SDN networks using EMACS
elnök: Dr. Imre Sándor Private Key Delegation in Attribute-Based Encryption Optimális delegálóstratégia kialakítása peer-to-peer önkéntes számítási platformhoz phase-type modell segítségével Embedded Systems Security: Threats, Vulnerabilities, and Attack Taxonomy NDN alapú szolgáltatás mediáció Bluetooth Low Energy hálózatokban A Virtual Testbed for Analysis and Design of Advanced Network-Based Mobility Extensions
elnök: Dr. Nagy Lajos
13:30 13:45 14:00 14:15 14:30 14:45
Szabó Gábor Csuka Barna Balogh András Horváth Róbert Herman Tibor Pető Tamás
15:30
Gerhátné Dr. Udvary Eszter
Design of a Simple Laser Diode Power Control Circuit R-DFT alapú csatornabecslés a 802.11ad rendszerben Design and development of a Bluetooth based indoor positioning system Szélessávú iránycsatoló tervezése a 0.9-9 GHz-es sávra SMOG-1 elsődleges energiaellátó rendszere Többcsatornás Passzív Radar Vevő Platform Eredményhirdetés és zárszó
Mesterpróba 2015
DÍJAZOTTAK
Budapesti Műszaki és Gazdaságtudományi Egyetem, Villamosmérnöki és Informatikai Kar díja Pelle István Monitoring and troubleshooting in SDN networks using EMACS Konzulens: Dr. Gulyás András Leiter Ákos A Virtual Testbed for Analysis and Design of Advanced Network-Based Mobility Extensions Konzulens: Bokor László Horváth Kristóf Attila Optimális delegálóstratégia kialakítása peer-to-peer önkéntes számítási platformhoz phasetype modell segítségével Konzulens: Dr. Telek Miklós Huawei Technologies Hungary Kft. különdíja (P8 Lite telefon) Pető Tamás Többcsatornás Passzív Radar Vevő Platform Konzulens: Dr. Pávó József IEEE Hugarian Joint MTT/AP/ED/EMC/ComSoc chapter különdíja (Microcoll konferencia részvétel) Horváth Róbert Szélessávú iránycsatoló tervezése a 0.9-9 GHz-es sávra Konzulens: Fehér Gábor Csuka Barna R-DFT alapú csatornabecslés a 802.11ad rendszerben Konzulens: Dr. Kollár Zsolt
MESTERPROBA, APRIL 2015
1
Optical simulation of monolithic grating structure Tam´as Szarvas1 and Zsolt Kis2 BME Atomfizika Tansz´ek, 1111 Budapest, Budafoki u´ t 8. MTA Wigner Fizikai Kutat´ok¨ozpont, 1121 Budapest, Konkoly-Thege Mikl´os u´ t 29-33. 1
2
in the subwavelength regime. The T-shaped ridges realize an effective high-low-high refractive index contrast. There are several specific purpose SRGs which are derived from a basic structure through obtimization: the scattering properties of sawtooth [3] and right-angle-face trapezoidal SRGs have been compared in ref. [4]. Substrate-mode optical interconnects are obtained from a V-groove Si SRG [5], or from a parallel-face slanted SRG [6]. Cavity couplers with high angular tolerance have been demonstrated in refs. [7]– [9]. Based on SRGs, polarizing beam splitter [10] and quarter wave plate [11] have also been developed. The goal of our work is to optimize the SRG with T-shaped ridges to obtain a wider high reflectivity plateau. To this end we defined a merit function for describing the reflection and maximized it by means of a numerical optimization procedure. In the course of optimization, the geometry of the T-shaped ridges of the SRG was changed. In order to validate the results, we applied two independent numerical methods for computing the reflection of the mirror. In Sec. II the main features of the Finite-Difference Time-Domain and the FiniteDifference Frequency-Domain methods are summarized. The numerical programs were developed in house. Then in Sec.III the optimization procedure is described and the result is presented. The paper is concluded in Sec. IV.
Abstract—The reflection of a monolithic broadband IR mirror was examined by means of numerical simulations. The mirror is fabricated from a single silicon crystal by etching a surface relief grating. This grating is periodic with sub-wavelength periodicity in one direction and homogeneous in the perpendicular axis. One period cross-section forms a T-shaped figure, realizing highlow-high refractive index contrast like an interference filter. This monolithic optical device bears outstanding opto-mechanical qualities, hence it can be efficiently used eg. in interferometers. The dimensions of the structure can be tuned by numerical modeling. We used the FDTD and FDFD methods to calculate reflectance of the surface. We showed that a wide reflective plateau can be obtained in the NIR wavelength range. We checked the stability of the simulation by energy conservation. The correctness of the results was assured by applying two independent methods (FDTD and FDFD) and comparing the results. Index Terms—Computational electromagnetic methods, Gratings, Diffraction gratings, Sub-wavelength structures.
I. I NTRODUCTION
N
OWADAYS high efficiency optical mirrors and filters are widely available in the form of multilayer dielectric structures. The layers are composed of various dielectrics of different thickness and refractive index, but they are homogeneous in the layer plane. Usually the transfer matrix method is used to rigorously simulate these kind of structures and very good results can be obtained: high reflectivity and negligible absorption in a broad wavelength range for mirrors or sharp, high transmittance peak and 5-7 ODs (optical density) in the remaining part of the spectrum for filters. However, not only the optical properties (such as transmission, reflection , spectral width, damage threshold, etc.) of the optical elements can be crucial. Parts of interferometers or even standard optical elements used in space or low temperature environments have to have very good thermal and mechanical tolerance. For these applications layered elements cannot be used. Under these circumstances, monolithic structures, which are fabricated from a single material can be applied efficiently. The optical properties of these monolithic devices are tailored by fabrication of a microstructure on their surface. In this paper we study a surface relief grating (SRG) structure which is periodic with sub-wavelength periodicity in one direction and homogeneous in the perpendicular axis. The basic surface structure was proposed in ref. [1] and subsequently experimentally realized in ref. [2] for an interferometric application in a gravitational wave detector, where the deformation of the mirror surfaces by the heat transfer from the strong laser beam should have been avoided. The surface structure consists of T-shaped ridges with a characteristic size
II. D ESCRIPTION OF NUMERICAL METHODS USED FOR SIMULATIONS
There are plenty of numerical methods which solve the Maxwell-equations directly. Structures with dimensions close to the wavelength should be solved using vectorial diffraction theory. There is no way to solve such geometries analytically in 2D, hence we need to rely on numerical simulations. A. Finite-Difference Time-Domain This method takes directly finite differences in time and in space for all direction. To fit the discretization to the symmetry of Maxwell equation the method uses the Yee-grid [12]. Thereby, the longitudinal equations are automatically satisfied and the curl equations can be readily expressed. In two dimensions we get the following set of equations for the T Ez mode: n+1/2
Hz |i,j
n−1/2
= Hz |i,j +
1
+
∆t h −Ey |ni+1/2,j + µ0 ∆x
i Ey |ni−1/2,j + Ex |ni,j+1/2 − Ex |ni,j−1/2 ,
MESTERPROBA, APRIL 2015
2
Ex |n+1 i,j+1/2
= Ex |ni,j+1/2 + h i ∆t n+1/2 n+1/2 + −Hz |i,j + Hz |i,j+1 , i,j+1/2 ∆x
Ey |n+1 i+1/2,j
= Ey |ni+1/2,j + i h ∆t n+1/2 n+1/2 + −Hz |i+1,j + Hz |i,j , i+1/2,j ∆x
Here eg. ex is a vector contatining field values Ex on the grid and eg. Dex0 is the discrete derivation matrix in x direction. ˜z: Eliminating ex and ey we get the following equation for h h e −1 h ˜ Dex0 −1 yy Dx0 + Dy 0 xx Dy 0 + µzz hz = 0
here µ0 is the magnetic permeability of the vacuum (non magnetic medium), i,j is the electric permittivity, ∆t is the time step, and ∆x is the spatial step size. In the course of the simulation, the field values are updated by time stepping. As for the spatial discretization, if the elementary step in space is dx then one wavelength is divided λ to Nλ = ∆x . In order to obtain accurate results, the usual choice is Nλ ≥ 10. The elementary time step is strongly connected to space step via numerical stability condition [12], √ . usually selected as c∆t = ∆x 3
Fig. 2. The electromagnetic field distributions in the FDFD simulation.
Fig. 1. Simulation setup.
Fig. 3. 2D cross-section of the grating with structure parameters.
The implementation of the field source to the system is not trivial, we used the Total-Field Scattered-Field (TF/SF) method [12], [13]. We applied periodic boundary condition (PBC, see [12] p. 569-572 for details) in the periodic direction of the structure and uniaxially perfectly matched layer (UPML, see [12], [13] for details) in the air and in the substrate. We applied detector planes for the reflected and the transmitted light, and evalueted the reflectance by integrating the Pointing vector after Fourier transformation. The simulation setup can be seen in Figure 1.
This homogeneous equation gives us only the trivial solution (no fields). For reflectivity calculation we need the response of the geometry for a certain source which is a plane wave with the predefined frequency ω and angle of incidence θ. Implementation of the source is done again with TF-SF method [14] [15]. Therefore, finally we get an inhomogeneous equation which can be solved by matrix inversion Ax = 0
The FDFD method starts off from Maxwell equations in the frequency domain. Thus the frequency ω is a parameter in the equations. For spectral data the required frequency range is discretized and the FDFD core is run for each frequency value. We also apply the Yee-grid for arranging the field components in the real space. After spatial discretization one have matrix equations, which consist of sparse but large matrices [14]. For the the T Ez mode one obtains =
xx ex ,
=
yy ey ,
˜z µzz h
=
Dex0 ey − Dey0 ex .
x
Ax = b
→
x = A−1 b
We compute again the reflectance of the structure by integrating the Poynting-vector for a surface. We applied the same simulation setup as for the FDTD method. Right after the matrix inversion we get the field distribution for each frequency component. As an example we can see the electromagnetic field distributions in Figure 2, where the colormap indicates the Hz field and the electrical field distribution is plotted with a vector field around the T-shape ridge at 1150 nm.
B. Finite-Difference Frequency-Domain
˜z Dhy0 h h ˜ −D 0 hz
source
−−−−→
III. R ESULTS
2
In Figure 3. we show the SRG cross-section under consideration for two ridges. The length of the period is p = 700 nm, width of the top layer wtop = 392 nm, width of the bottom layer wbottom = 182 nm, height of the top dtop = 350
MESTERPROBA, APRIL 2015
3
nm, height of the bottom dbottom = 430 nm (these initial parameters are taken from [1], [2]). We regard the Si material as lossless and eliminated the imaginary part of the dielectric constant. As for the real part, we applied refractive index n = 3.5 through the whole NIR range. First we simulated the original (initial for the optimization) structure to determine its reflectivity in the NIR wavelength range for TE polarization. Energy conservation was always considered and checked throughout the simulations. However, energy conservation alone does not guarantee the validity/accuracy of the numerical results. Therefore, the two independent numerical methods were used that we described in Sec. II and the results were compared validating each other. Figure 4. reflects the correctness of our numerical results. In case of normal incidence and TE polarization, the reflection spectrum in the NIR range was captured and plotted simultaneously. The curves overlap well, hence the correctness of both calculations is proven.
Fig. 5. Reflectivity map in wavelength and width of hat: R(λ,wtop )
parameter in the optimizer. Then we repeated the optimization. As a result we found the following structure parameters which maximize the reflectivity in the NIR wavelength range: =
392 → 510 nm
wbottom
=
182 → 130 nm
dtop
=
350 → 365 nm
dbottom
=
430 → 370 nm
The height of the top layers increased slightly, while that of the bottom layer decreased significantly with 13 %, which yields a mechanically more robust structure. The width of the top layer increased, while that of the bottom layer decreased. It means that the effective refracive indices of the top and buttom layers increased and decreased, respectively. The width of the bottom layer is smaller than the original 182 nm, however, considering the decrease of its height it seems experimentally doable, similarly to the original structure. For demonstrating how the variation of the parameters affects the reflectivity, we scan through with the top layer width parameter in the optimization range. Figure 5. shows the reflectivity map, where the x axis is the wavelength, the y axis is the scanning parameter: wtop . It can be seen that at wtop = 510 nm there is a broad reflection plateau, the range where this mirror reflects more than 99% is much wider than for the original structure. In order to compare the high reflectivity range between the original and optimized structures, we plot simultaneously the reflectivity curve for them in Figure 6. It is clear that the optimized structure has a significantly wider total reflection range in the NIR spectral range than the original.
Fig. 4. Direct comparison of independent numerical methods, initial SRG geometry, normal incidence
For realizing a broadband mirror we optimized the reflection of the SRG. In the course of the optimization, the width and height of the up and bottom layers were varied (we changed the refractive contrast of the SRG). The chosen numerical optimization procedure (a built in Matlab function) had the capability to set constraints for the parameters, hence we could avoid irrealistic parameter values. We could successfully determine structure parameters which results in close to total reflection in the full NIR range. The structure parameters given in the first paragraph of this Section were chosen as the starting parameters for the optimization. We minimized the transmittance of the structure so that the merit function was the sum of the transmittance values (essentially the integral of the transmission) in the discretized NIR wavelength range (1100 - 1900 nm). We varied first the heights and widths of the top and bottom layers simultaneously. The received width for the bottom layer after the optimization was unacceptable for fabrication (around 100 nm), therefore we set the lower limit as 130 nm for this
wtop
3
IV. C ONCLUSION In this paper we report the optimization of a surface relief grating structure with T-shaped ridges to realize a broadband
MESTERPROBA, APRIL 2015
4
[10] H. Zhao and D. Yuan, ”Design of fused-silica rectangular transmission gratings for polarizing beam splitter based on modal method,” Appl. Opt. 49, 759 - 763 (2010). [11] M. Mutlu, A.E. Akosman, G. Kurt, M. Gokkavas, and E. Ozbay, “Experimental realization of a high-contrast grating based broadband quarter-wave plate,” Opt. Expr. 20 27966-27973 (2012). [12] A. Taflove, Computational Electrodynamics The Finite-Difference TimeDomain Method 2nd ed. (Artech House, 2000). [13] A.D. Papadopoulos and E.N. Glytsis, ”Finite-difference-time-domain analysis of finite-number-of-periods holographic and surface-relief gratings,” Appl. Opt 47, 1981 - 1994 (2008) [14] R.C. Rumpf, ”Simple implementation of arbitrarily shaped totalfield/scattered-field regions in finite-difference frequency-domain,” Progr. Electr. Res. B 36 221 - 248 (2012). [15] R.C. Rumpf, ”Design and optimization of nano-optical elements by coupling fabrication to optical behavior,” PhD dissertation, University of Central Florida (2006).
Fig. 6. Reflectivity comparison for the original and optimized structures.
mirror in the NIR spectral range. The determination of the optimal geometry of the SRG was performed by means of numerical optimization. The constrained optimization procedure successfully found an optimal parameter set within the requested limits. The result was validated by calculating the transmittance of the optimal structure with two independent simulation methods. This work contributes to the exploration of the optical capabilities of the SRGs with T-shaped ridges. ACKNOWLEDGMENT The authors acknowledge the support of the Hungarian National Research Fund (OTKA K112125). R EFERENCES [1] F. Br¨uckner, T. Clausnitzer, O. Burmeister, D. Friedrich, E.-B. Kley, K. Danzmann, A. T¨unnermann, and R. Schnabel, ”Monolithic dielectric surfaces as new low-loss light-matter interfaces,” Opt. Lett. 33, 264-266 (2008). [2] F. Br¨uckner, D. Friedrich, T. Clausnitzer, M. Britzger, O. Burmeister, K. Danzmann, E.-B. Kley, A. T¨unnermann, and R. Schnabel, ”Realization of a monolithic high-reflectivity cavity mirror from a single silicon crystal,” Phys. Rev. Lett 104, 163903, 1-4 (2010). [3] C.B. Lee, K. Hane and S.K. Lee, “The optimization of sawtooth gratings using RCWA and its fabrication on a slanted silicon substrate by fast atom beam etching,” J. Micromech. Microeng. 18 045014-045021 (2008). [4] Shun-Der Wu, Thomas K. Gaylord, and Elias N. Glytsis, ”Optimization of sawtooth surface-relief gratings: effects of substrate refractive index and polarization,” Appl. Opt. 45 3420 - 3424 (2006). [5] Shun-Der Wu, Thomas K. Gaylord, Jonathan S. Maikisch, and Elias N. Glytsis, ”Optimization of anisotropically etched silicon surface-relief gratings for substrate-mode, optical interconnects,” Appl. Opt. 45 15 - 21 (2006). [6] J.S. Maikisch and T.K. Gaylord, ”Optimum parallel-face slanted surfacerelief gratings,” Appl. Opt. 46 3674 - 3681 (2007). [7] S. Kroker, T. Kasebier, F. Br¨uckner, F. Fuchs, E.-B. Kley, and A. T¨unnermann, ”Reflective cavity couplers based on resonant waveguide gratings,” Opt. Expr. 19, 16466 - 16479 (2011). [8] S. Kroker, F. Br¨uckner, E.-B. Kley, and A. T¨unnermann, ”Enhanced angular tolerance of resonant waveguide grating reflectors,” Opt. Lett. 36, 537 - 539 (2011). [9] S. Kroker, T. K¨asebier, E.-B. Kley, and A. T¨unnermann, ”Coupled grating reflectors with highly angular tolerant reflectance,” Opt. Lett. 38, 3336 3339 (2013).
4
Mágneses hiszterézis modellezése végeselem-módszer és skalár Preisach-modell segítségével Unger Tamás István
Prof. Dr. habil. Kuczmann Miklós, Ph.D.
Automatizálási Tanszék Széchenyi István Egyetem M.Sc. szakos villamosmérnök hallgató Gy˝or, Magyarország
[email protected] http://maxwell.sze.hu/∼ungert
Automatizálási Tanszék Széchenyi István Egyetem dékán, tanszékvezet˝o, egyetemi tanár Gy˝or, Magyarország
[email protected] http://maxwell.sze.hu/∼kuczmann
Kivonat—Cikkem a ferromágneses hiszterézis mérésének segítségével modellezési módszert kínál a jelenség numerikus kezelésére. Ismertetem a skalár Preisach-modell elméletét, az implementációt, a modell kimenetének meghatározási módját tetsz˝oleges gerjesztés esetén. Összefoglalom az implementált modell végeselem-módszerrel végzett elektromágneses téranalízisbe történ˝o integrálásának módját, fontosabb lépéseit. Röviden bemutatom a szimuláció sarkalatos pontjait, felvázolom azokat a vizsgált problémákat, melyek a kutatási munkám során implementáltam, példát mutatva a mágneses térer˝osségre, valamint a mágneses vektorpotenciálra épül˝o formalizmusok alkalmazhatóságára is. Kulcsszavak—mágneses hiszterézis, végeselemmódszer, numerikus térszámítás, elektromágneses terek, modell, nemlineáris anyagok
I.
B EVEZETÉS
Munkám a mágneses hiszterézis modellezésének, szimulációjának témakörében íródott, els˝odleges célkit˝uzése a hiszterézis-karakterisztikával jellemezhet˝o ferromágneses anyagok viselkedésének numerikus leírásának bemutatása, valamint a modell numerikus térszámításhoz történ˝o illesztési elméletének ismertetése, a kapcsolódó kutatási eredmények felvázolása és kiértékelése. A nemlineáris anyagparaméterek modellezésének és szimulációjának, s így a kutatási munkának a fontosságát és aktualitását els˝osorban az adja, hogy az iparban alkalmazott szimulációs programcsomagok használata nem nyújt lehet˝oséget komplexebb nemlineáris jelenségek kezelésére. A jelenségeket leíró egyenletek alapoktól történ˝o felépítése és azok numerikus megoldása, valamint a hiszterézist reprezentáló modell megalkotása és a szimulációhoz történ˝o kapcsolásának megvalósítása széleskör˝u lehet˝oséget nyújt bonyolult, összetett
5
nemlineáris anyagparaméterek szimulációjára is, ami többek között jelent˝osen segíti a tervezési, optimalizálási munkát is. A bemutatásra kerül˝o szimulációk mindegyikét Matlab környezetben valósítottam meg, kétdimenziós geometriák esetén a végeselemhálót a GMSH szoftver rácsgeneráló moduljának segítségével készítettem el.
II.
A SKALÁR P REISACH - MODELL
Általánosan megfogalmazható, hogy hiszterézises tulajdonsággal bír az olyan egy bemenet˝u, egy kimenet˝u rendszer, melynek gerjesztés-válaszkapcsolata nemlineáris és többérték˝u. Ebben az esetben a rendszer memóriával rendelkezik, az aktuális állapota függ a rendszer el˝oéletét˝ol. A Preisach∏
γ(α,β)u +1
μ(α,β) u(t)
β
-1
α
u
∏
∫
y(t)
μ(α,β)
∏
μ(α,β)
1. ábra. Egy hiszteron karakterisztikája és a modellt reprezentáló jelfolyam-hálózat
modell a skaláris, statikus hiszterézis jelenségét képes leírni úgy, hogy a kimenete definíció szerint végtelen számú relé-típusú karakterisztikával (hiszteron) rendelkez˝o rendszer válaszának súlyozott szuperpo-
zíciójaként áll el˝o az ZZ y(t) = Γ{u(t)} = µ (α, β) γˆ (α, β) u(t) dαdβ
határozásához [3] az y(t) = −E (α0 , β0 ) + 2
α≥β
[E (αi , βi−1 ) − (3)
i=1
(1) formula alapján, melyben Γ{·} a skaláris hiszterézist reprezentáló operátor, µ (α, β) a mérési adatokból identifikálható, az 1. ábrán látható γˆ (α, β) elemi hiszteronokat súlyozó Preisach-eloszlásfüggvény [1]. A jelfolyam típusú hálózat párhuzamos ágaiban az egyes hiszteronokra jellemz˝o α és β értékek rendre máshogy alakulnak, ami egyszer˝uen leírható az úgynevezett Preisach-háromszög fogalmának bevezetésével. A Preisach-háromszög a maximális bemeneti értékre normalizált α − β sík azon része, melyre igaz, hogy α ≥ β, tehát a definíciós integrál tartója, mely felett a kiértékelést el kell végezni. A Preisach-háromszögön belül a rendszer el˝oéletét +1
K X
− E (αi , βi )] összefüggés definiálható (1) és (2) alapján, ahol K a lépcs˝os függvény fordulópontjainak száma. Munkám során ebb˝ol az összefüggésb˝ol kiindulva, de egy újszer˝u kimenetszámítási módszert valósítottam meg, amely szoros kapcsolatban áll a Preisach-háromszög részterületeinek alakulásával. Az algoritmus két küy(t) 4
3
u(t)
u(t) 3
4
2
1
β
y(t)
β
y(t) 1 2
β
1
B
β α=
D E C A
42 3
A α
α
C E
-1
1
β
1
3
α
=
6
42
=
5
4
B
α
4 3
D
u(t) β
α
6 5
3
(a) Csökken˝o gerjesztés
(b) Növekv˝o gerjesztés
2 2 1
3. ábra. Harmadrend˝u minor hurok nyitása 2. ábra. A lépcs˝os függvény és a karakterisztika alakulása az L(t) lépcs˝os függvény reprezentálja, mely balról jobbra mozog, ha a rendszer gerjesztése növekszik, és fentr˝ol lefelé, ha a gerjesztés csökken. A lépcs˝os függvény bemeneti jelt˝ol függ˝o id˝otartománybeli mozgása kapcsolja fel vagy le a háromszögön belül található elemi hiszteronokat, így határozva meg a kimenet aktuális értékét. A lépcs˝os függvény két tartományra bontja fel a Preisach-háromszöget: a görbe alatti részterületen a felkapcsolt hiszteronok találhatók (itt γˆ = +1), a görbe felett pedig a lekapcsolt hiszteronok foglalnak helyet (ˆ γ = −1). Mivel (1) kett˝os integrál kiértékelése bonyolult és id˝oigényes m˝uvelet, ezért munkám során nem ezt az összefüggést, valamint nem a µ (α, β) Preisacheloszlást használtam, hanem a bel˝ole származtatható E (α, β) Everett-függvényt, és az ahhoz rendelt numerikus megvalósítási lehet˝oséget [2]. Az Everettfüggvény és a Preisach-eloszlás kapcsolata: ZZ E (α, β) = µ (α0 , β 0 ) dα0 dβ 0 . (2) α≥β
Alkalmazásának egyik legnagyobb el˝onye, hogy segítségével a modell kimenete sokkal takarékosabban el˝oállítható. A modell kiemenetének általános meg-
6
lönböz˝o esetet kezel attól függ˝oen, hogy a gerjesztés a kezdetben növekedett, vagy éppen csökkent. A lépcs˝os függvényt az L mátrix reprezentálja, melynek oszlopai a görbe tényleges fordulópontjait tárolják az (α, β) koordináták segítségével. A 3. ábrán vázolt harmadrend˝u minor hurok kezelésének esetén a lépcs˝os görbét reprezentáló mátrix kezdetben növekv˝o gerjesztés esetén az α1 α1 α3 α3 L= (4) −α1 β2 β2 β4 alakban írható fel, míg a kimenettel arányos háromszög területe a fordulópontok alapján megadható részháromszögek területei alapján: TAB1 − TCB2 + TCD3 − TD4E ,
(5)
a modell kimenete pedig az h y(t) = ymax − E (α1 , −α1 ) + 2 E (α1 , −α1 ) − i − E (α1 , β2 ) + E (α3 , β2 ) − E (α3 , β4 ) (6) formulával állítható el˝o. Az összefüggések kezdetben csökken˝o gerjesztés esetében az α1 α2 α2 α4 L= , (7) −α1 −α1 β3 β3
alakokat öltik, melyek analógiájára a sz˝uzgörbéhez, a visszatér˝o görbéhez és a tetsz˝oleges rend˝u minor hurokhoz [4] tartozó modellkimenet számításának módszere implementálható.
α, β ∈ [−1, −α1 , , ..., −αn−1 , 0, αn−1 , ..., α1 , 1] , (13) így az yαi βj -értékek is ezen diszkrét pontokban értelmezhet˝ok.
A MODELL MÉRÉSI EREDMÉNYEKHEZ E(α,β)
III.
függvény diszkrét értelmezési tartományának felosztási finomságát. Amennyiben n darab koncentrikus hurok áll rendelkezésre, úgy a függvény (n + 1) · (n + 1) pontban adható meg, ahol
ILLESZTÉSE
1
1
0.8
0.8
0.6
0.6
E(α,β)
TA1B + TC2B − TC3D + TE4D , (8) h y(t) = ymax E (α1 , −α1 ) − 2 E (α1 , −α1 ) − i (9) − E (α2 , −α1 ) + E (α2 , β3 ) − E (α4 , β3 )
0.4 0.2
Ferromágneses anyagok esetén hiszterézises kapcsolat definiálható a mágneses térer˝osség (bemenet) és a mágneses indukció (kimenet) között a vonatkozó konstitúciós reláció operátoros alakjának segítségével: n o ~ =B H ~ . B (10) A kapcsolat speciális, skaláris esetét egy toroid transzformátor segítségével mértem, vizsgáltam. Ebben az esetben a mágneses térer˝osség az Ampéreféle gerjesztési törvény értelmében a primer oldali menetszám, a közepes sugár és a gerjeszt˝oáram ismeretében meghatározható, míg a mágneses indukció id˝ofüggvénye a szekunder oldalon mért indukált feszültség integrálásának segítségével számítható az indukciós törvény értelmében: H(t) =
Np I(t) 1 , B(t) = B0 + 2Rk π Nsz A
Zt ui (τ ) dτ. 0
(11) A mérés során a gerjeszt˝oáram amplitúdójának fokozatos növelésével a koncentrikus görbék felvételére törekedtem. A koncentrikus görbék segítségével az y(t)
β
α
=
β
y α,β y α1,β
α=1 α1
y α2,β α=1 α2
α1
u(t)
α
=
-β
α2
α
4. ábra. Az Everett-függvény felépítése a koncentrikus görbékb˝ol Everett-függvény identifikálható, a 4. ábra jelöléseinek megfelel˝oen az yα − yαi βj E (αi , βj ) = i (12) 2 összefüggés felhasználásával. Az Everett-függvény felépítése során szem el˝ott kell tartani, hogy a mért koncentrikus hurkok száma közvetlenül determinálja
7
0.4 0.2
0 1
0 1 0.5
1 0 β
−1
−1
−1
0.5 −0.5
0
0
−0.5
0
−0.5
0.5 −1
α
α
1
β
5. ábra. Az identifikált Everett-függvény
IV.
V ÉGESELEM - MÓDSZER
A végeselem-módszer numerikus technika parciális differenciálegyenletek közelít˝o megoldására. Alkalmazása során a vizsgált geometriát diszkretizálni szükséges. Ez egydimenzióban szakaszokra, kétdimenzióban például háromszögekre történ˝o szegmentálást jelent. A módszer az eredeti egyenlet helyett egy általánosabb formula kezelésével foglalkozik, amely úgy adódik, hogy az eredeti összefüggés megszorzásra kerül egy tetsz˝oleges súlyfüggvénnyel, majd integrálásra kerül a teljes problématartományra [2]: Z < PDE > ·Wi dΩ = 0 ∀Wi ∈ W. (14) Ω
Munkám során a Galerkin-módszert [5] alkalmaztam, ebben az esetben a súlyfüggvény megegyezik az elemek felett értelmezett formafüggvényekkel. A leképezés egy lineáris algebrai egyenletrendszert eredményez: K · u = b, (15) amely a rendelkezésre álló számítástechnikai eszközök segítségével megoldható. Az összefüggésben K az együtthatómátrix, u az ismeretleneket, b pedig a gerjesztést, a peremfeltételeket és az el˝oz˝o id˝olépést tartalmazó oszlopvektor. Munkám során minden esetben skaláris, lineáris formafüggvényeket alkalmaztam az elemeken. V.
F IXPONTOS ITERÁCIÓ , POLARIZÁCIÓS FORMULA
A skalár Preisach-modellt a fixpontos iterációs séma segítségével illesztettem a numerikus téranalízisbe. A módszer lényege, hogy az y = f (x) alakban felírt nemlineáris egyenletrendszert iteratív
a másik két esetben numerikus integrálásra, Gausskvadratúrára van szükség [8]. A szimuláció kimene2000
1.5
1500 1 1000 0.5
B [T]
500 H [A/m]
úton, szukcesszív approximáxió segítségével oldja meg. Ennek lényege, hogy bizonyos közelít˝o értékek birtokában további közelít˝o értékek sorozatát képezi, melyek kontraktív, konvergens leképezés esetén az egyenletrendszer valódi gyökéhez konvergálnak [6]. Az iterációs összefüggés az
0
0
−500
xn+1 = xn − λF (xn ) ≡ f (xn ),
−0.5
n = 0, 1, 2, ..., (16) összefüggéssel írható le, ahol λ paraméter alkalmas megválasztása biztosítja a kontraktivitást. y
B y=x
−1000 −1 −1500 −2000
−1.5
−1
−0.5
0 x [m]
0.5
1
−1.5
1.5
−1.5
−1
−0.5
−4
x 10
0 x [m]
0.5
1
1.5 −4
x 10
7. ábra. A remanencia jelensége
nemlineáris karakterisztika
y = f (x)
R lineáris összetevő
c = f(c)
teként a mágneses térer˝osség adódik, mely értékek alapján a Preisach-modell szubrutinja iteratív módszerrel meghatározza a vonatkozó indukcióértékeket is.
μH
c x2
x1
VII.
x0 x
S ZIMULÁCIÓ A MÁGNESES VEKTORPOTENCIÁLRA ÉPÍTVE
H
6. ábra. A fixpontos iteráció és a karakterisztika felbontása
A hiszterézis karakterisztika minden pontban felbontható egy lineáris és egy nemlineáris (maradék, reziduális) komponens szuperpozíciójára a 6. ábrán látható módon. Két eset lehetséges: vagy a mágneses térer˝osségre, vagy a mágneses indukcióra építjük a szimulációt, mindkét esetben a nemlineáris reziduálkomponensre írható fel egy nemlineáris egyenletrendszer: n o n o ~ =B H ~ − µo H, ~ I~ = H ~ − νo B H ~ , (17) R melyek µo és νo helyes megválasztása esetén fixpontos iterációval megoldhatók. VI.
˝ S ZIMULÁCIÓ A MÁGNESES TÉREROSSÉGRE
A modell illeszthet˝o a nemlineáris örvényáramú formalizmus numerikus implementálásához is. ~ divergenciamentes mágneses A formalizmus a B ~ mágneses vektorpotenciál rotációjaként indukciót A vezeti be. A formalizmus gyenge alakja: Z Z ~ ~·∇×W ~ dΩ + σ W ~ · ∂ A dΩ = ν∇ × A ∂t Ω Z Z Ω ~ dΩ + ~ ·K ~ d~ = − I~ · ∇ × W W Γ. Ω
ΓN K
(19) Alkalmazásának el˝onye, hogy közvetlenül a gerjeszt˝oáram írható el˝o Neumann-típusú peremfeltételként, míg a mágneses térer˝osségre épít˝o esetben a térer˝osség került el˝oírásra Dirichlet-típusú peremfeltétel formájában.
ÉPÍTVE
A kutatási munkám során megvizsgáltam egy ferromágneses anyagból készült, homogén mágneses térbe helyezett vezet˝o lemez viselkedését. A problémát leíró parciális differenciálegyenlet a Maxwellegyenletekb˝ol levezet˝o [7], melyb˝ol a következ˝o gyenge alak adódik: Np Z Np Z X X ∇Wi · ∇Wj dΩHi + µσ Wj Wi dΩ i=1 Ω
H IVATKOZÁSOK [1] [2] [3] [4] [5]
i=1 Ω
Np Z X ∂Ri ∂Hi = −σ Wj Wi dΩ j = 1, ..., Np . ∂t ∂t i=1
[6] [7]
Ω
(18) Az els˝o integrál a formafüggvények gradienseit tartalmazza, így annak kiértékelése lineáris esetben nem igényel numerikus integrálási technikát, míg
8
[8]
Iványi A. Hysteresis Models In Electromagnetic Computation. Akadémiai Kiadó, Budapest, 1997. Kuczmann M., Iványi A. The Finite Element Method in Magnetics. Akadémiai Kiadó, Budapest, 2008. Hong S-K., Kim H-K., Jung H-K. Analytical Formulation for the Everett-function. Journal of Magnetics, Korea, 1997. Della Torre E. Magnetic Hysteresis. IEEE Press, New York, 1999. Jin J., The Finite Element Method in Electromagnetics. John Wiley and Sons, New York, 2002. Bronstein I. N., Szemengyaljev K. A. Matematikai kéziköny. TypoTEX kiadó, Budapest, 2009. Dr. Simonyi K., Dr. Fodor Gy., Dr. Vágó I., Elméleti villamosságtan példatár. Tankönyvkiadó Vállalat, Budapest, 1980. Dolezel I., Karban P., Solin P., Integral Methods in LowFrequency Electromagnetics. John Wiley & Sons, Canada, 2009.
Centralization of remote control using web applications András Balogh, Sándor Szabó Department of Networked Systems and Services Budapest University of Technology and Economics Budapest, Hungary
[email protected],
[email protected] concept, which is able to meet the criteria of scalability and usability in the world of smart building appliances (section II.). After that an example design is described as an interpretation of the proposed centralized model in todays technological context (section III.). Though the implementation and the verification showed satisfactory results, there were different questions remained opened, which are suggested for future research at the end of this paper (section IV.), where the conclusion is drawn also.
Abstract—The general model of nowadays hardware and/or software based remote control applications is limited in terms of applicability, clarity, scalability and developability. Because of the decentralized and dedicated (vendor specific) approach these solutions are not able to meet the requirements of the future smart home (or building) applications. In this paper, the current remote control methods are abstracted and then a centralized model is derived, in which every interaction with the remote devices is carried out through a central entity, which holds the possibility of M2M communication within, moreover it clarifies the way of control to the users. As an interpretation of this model, an experimental system was developed, in which the central entity (a mobile application), visualized different control interfaces (implemented as HTML5 web applications) of some simple prototype devices, while for the exchange of control messages the Bluetooth Low Energy technology was used.
II. EVOLUTION OF REMOTE CONTROL MODELS A. Dedicated hardware based remote control For finding one of the first remote controllers, one should go back in time to the middle of 1898, when Nikola Tesla invented a “Method of and apparatus for controlling mechanism of moving vessels or vehicles” [6]. In the given solution there was an electronic device, which forwarded the control actions (e.g. turning a handle) using radio waves to the moving vessel, where the appropriate reaction was carried out using a receiver and actuator device.
Keywords—remote control, centralization, general model, html5, web application
I. INTRODUCTION As the ubiquitous computing is evolving, more and more complex and pervasive services and devices are being merged into the technological context of our everyday life. However approaching the era of the Internet of Things - there were numerous steps made to support the high density of interconnections using different protocols between devices and services, the “user side” of the possible interactions remained almost untouched, as the “entry points” (human interfaces) of the “Things” (such as remotely controllable devices or services) were not revised. Unfortunately the technical literature lacks any kind of a comprehensive survey about remote control methods or models. Though there are different experimental and industrial results and solutions, either they are relying on a complex architecture (e.g. [1-3]), or the solutions proposed (or even marketed) are almost completely vendor and/or technology specific (e.g. [4-5]). These attributes alltogether result in solutions that are limited in terms of scalability and usability, which are significant drawbacks, especially if we take into consideration the unpredictable number of future devices and the various communication technologies supported by them.
Figure 1. Dedicated remote hardware interfaces
Though this approach was presented more than a century ago, it can be easily observed that nowadays the common term of remote control is actually the same. However the technological advance enabled the use of various communication technologies (i.e. infrared and other wireless methods), ergonomic shaping, and various physical input capabilities, the underlying model (Figure 1.) remained untouched.
In this paper, starting from a possible first point in the history of remotely controllable electronic devices, an inductive evolution process is followed to derive a general
9
As in this model every device (or at least every device type) has a dedicated remote control hardware, every different remote hardware interface shall be learned to use, and one shall possess all these controllers (not mentioning the simultaneous actions). Though there are different methods to hide this complexity (such as universal remotes, or dedicated smart home systems), as these approaches usually lack the “common language” (e.g. platform, wireless interfaces, etc.), there will always be compatibility and interoperability issues.
specific also (e.g. power on a given device), and according to the model, they shall be implemented (and later found and installed by the user) on every given mobile device platform. Taking into consideration the fancy (and not always informative) names of these mobile applications also, it can be easily derived that the dedicated software based methods introduce much greater diversity in the control interfaces, which results in a less scalable approach in terms of usability also.
This way the model of dedicated remote hardware interfaces can not be considered scalable and user friendly at all in todays dynamically advancing technological environment.
C. A centralized approach Both the previously mentioned models, had their advantages in a given point of view. While the dedicated hardware based method is univocal in term of which equipment is controlled, the software based model removed the physical complexities and limitations of the various remote controller hardware interfaces. Merging these attributes into a given model, there are only the issues of scalable interoperability and the extendibility remained open, which can be solved by the encapsulation of the virtual device interfaces into one central logical entity: the Unified Device Access (Figure 3.).
B. Dedicated software based methods The introduction of touchscreen capacitated mobile devices enabled a completely different manner of remote control. As the visualization technologies advanced there were plenty of remote control applications (Figure 2.) developed (e.g. [7-8]) on given mobile platforms, which made use of the available generic physical interface (the touchscreen) and the different wireless communication technologies (e.g. Wi-Fi, Bluetooth, etc.) supported.
Figure 2. Dedicated software interfaces
As the various dedicated remote controller hardware equipments can be replaced with one generic device, this model implies some kind of centralization. Even though following this model a significant progression can be made in the way of control (such as informative tutorials, complex and ergonomic panels, sensor based events), these remote controller applications remained dedicated to given (usually vendor specific) device groups with given communication capabilities.
Figure 3. Concept of centralized remote control method
The first role of the Unified Device Access (UDA) entity is to maintain an isolated running environment for the device interfaces, and detach them from the underlying hardware: the User Interface Host (UIH). The UIH is the abstraction of the physical platform (hardware and operation system, like andoid based smartphones), that holds the UDA within, supports different network technologies, and has a generic pysical input and output interface that is suitable for the remote control of as much services and devices as desired.
Though there are different control message exchange protocols (like BACnet [9], KNX [10], etc.), the actual application of these are usually specific to the given vendor, implementation, or the system. In addition due to different security considerations of mobile platforms (application isolation), it is almost impossible for these applications and systems to cooperate, which is a significant drawback in terms of integration, extendibility, and M2M communications. Moreover these applications can be service or even function
The detachment implies the possibility of platform and/or communication interface independent device interface development, which is a significant improvement in terms of scalability and extendibility. Though it should be noted, that the UDA will always remain attached to the given platform. The second role of UDA is to enable a Central Intelligence object within, which has the appropriate wrapper functions to
10
facilitate the communication activity (like inter process calls, capability arrangement) of the different device interfaces, while making the actions supported by a given remotely controlled device configurable to given triggering events (e.g. time intervals, reaching a temperature limit, etc.) by the user. This implies, that the use of application servers, and complex infrastructures is clearly optional, further improving the scalability.
Though these points are quite general, any kind of further specification breaks the point of wide applicability. Even though the implementation of such a complex layer is a great challenge, it is only needed to be developed once per a given platform (UIH). Moreover a modular approach can be used also. However there could be many different interpretations and implementations of the UDA (even on one platform), it should be noted that the diversity of these approaches is detached from the number of device types and systems, as the task of a UDA entity is the general remote control itself.
The device interfaces shall always expose the functions, messaging primitives and the networking technology that are supported by the corresponding remotely controlled devices. Though this is required mainly because of the detachment from the platform itself, the list of these attributes gives the oppurtunity to create custom device interfaces by the users, and enables the discovery of these capabilities by other devices (i.e. the seamless M2M communication). This implies the relay function of Central Intelligence to other Device Interfaces and Central Intelligence entities within a network, forming this way a distributed system. This ensures the scalability of the system in terms of future UIH equipments and remotely controlled devices also. Though a distributed system of UDA entities seems to be controversal to the title of this paper, the term of centralization is a local design paradigm in this particular work, which can be extended globally in the future by using a distributed approach.
III. EXAMPLE DESIGN A. Interpretation of the centralized model In todays technological context the smartphone is one of the best candidates for the physical realization of a User Interface Host. In this particular example the Android operation system was chosen. This way the Unified Device Access entity was an Android application, that was able to maintain an isolated running environment for the device interfaces. As the realization of these interfaces in form of plugins was insufficient in a platform independent approach, only a widely used scripting language would meet this criteria. As the HTML5 [14] was standardized in 2014, there were numerous useful features (e.g. offline storage, speech input, WebGL, etc.) introduced in the web application development, which involves using JavaScript language for application logic implementation. Due to the availability and design guidelines using this language results in a solution, that can be accessed on wide range mobile devices.
The device interfaces exchange the control messages with the remotely controlled devices through the Central Intelligence entity using the Network Function Abstraction (NFA) layer, whis is the third most important part of the Unfied Device Access entity. The NFA shall support as much technology (some of which mentioned in section II/B.) as possible to provide interopereability functions, wide usage, and extendibility, without loosing the backward compatbility with the previously designed systems in use. The addition of different device interfaces, and the assignment to the appropriate device is strongly related to the supported functions of the NFA layer, and can be achieved with different activities (e.g. download directly from the device, or online sources using informations discovered on the remotely controllable equipment). As even the modeling of an NFA-like functionality is far more complex (and still open) problem (e.g. [11-13]), than it could be well described in one paper, only the critical functions are listed below:
The device shall be identified with a globally unique ID.
The NFA and the remotely controlled device shall be compatible in terms of discovery protocols and connection establishment methods.
Either while in connection, or at the discovery phase, the device shall expose informations (direct or indirect) regarding the exact location of its device interface, which shall be be forwarded to the Central Intelligence object.
Figure 4. The Necticon application (UDA)
The UDA application (Necticon) consisted of a Service (Necticon Protocol) to which the NFA functionality was assigned, and an Activity (Device Interface Manager), which contained the functions needed for a Central Intelligence entity (i.e. managing relations between devicees and the corresponding interfaces), and the Device Interface Environment (DIE). In DIE (a webkit based WebView object) there was an Interface Object used, which created the connection between the JS and JAVA application logics using simple function calls. If on one device interface a user action happened, the corresponding message (formatted as simple string) was sent with a deviceID to the Necticon Protocol using the Messenger object of the Android framework. When the response was
The given device interfaces shall be accessable at the location obtained in the previous point.
11
received by the Necticon Protocol it was forwarded in form an Intent object to Device Interface Environment, where the appropriate JS function was called, which obtained the message from the native application as returned value.
IV. CONCLUSION Following the evolution steps of the different remote control methods, in this paper a centralized model was proposed, which shows better potential in terms of scalability, interoperabaility, and extendibility, then the currently available solutions. Though the example interpretation and the experimental implementation showed satisfactory results, the model is far from being complete. As there are many different communication technologies, the design of a complex and transparent network interoperability function set as a Network Function Abstraction layer will be continued. Moreover the question of security should be well analyzed in terms of the Network Abstraction Function and the device interfaces also, as the malicious programs must be detected and filtered efficiently. Further research topic is the applicability of the proposed model in the broad world of smart appliances (i.e. the Internet of Things).
Figure 5. The Necticon Protocol (NFA)
The Necticon Protocol (NFA) was limited in terms of functionality (Figure 5.), using only the Bluetooth Low Energy technology, which supported every critical function that was required for a proof of concept implementation and verification.
ACKNOWLEDGMENT This research has been sponsored by BME-Infokom Innovátor Non-Profit Ltd., http://www.bme-infokom.hu/
B. Implementation and verification After the designing process the application was developped on a Samsung Galaxy S3 device. The remotely controlled device was a keyfob Bluetooth Low Energy module manufactured by Texas Instruments [15], on which the firmware was modified for being able to handle switching the red and the green LEDs on and off, and sending back the new state as a response to a given action.
REFERENCES [1]
[2]
[3]
[4]
[5]
[6] [7]
[8]
Figure 6. Experimental system in action
In addition a suitable device interface HTML5 application was developped, which was placed on an online server, and after the first load, it was cached using the offline storage capability (which corresponded to a seamless device interface installation procedure).
[9] [10] [11]
The example system overally worked as expected (Figure 6.). It can be easily seen, that the development of web applications (according to the model) is completely platform independent and only one central mobile application was used. Though the main scope of this implementation was a preliminary demonstration of the centralized approach, the results showed, that the model and the corresponding interpretation worth paying attention in the future.
[12]
[13]
[14] [15]
12
Yuan-Chih Yu et al., “A Remote Surveillance Model for Appliance Control,” 2010 13th Int. Conf. on Network-Based Inf. Systems (NBiS) , pp. 499-503, Sept. 2010. Rajabzadeh A. et al., “A generic model for smart house remote control systems with software and hardware simulators,” 2013 5th Conf. on Inf. and Knowledge Technology (IKT), pp. 262-267, May 2013. Escoffier C.et al., “Towards a Home Application Server,” CCNC 2008. 5th IEEE Consumer Communications and Networking Conf., pp. 321325, Jan. 2008. Gira, “Gira KNX System”, http://www.gira.com/en/gebaeudetechnik/systeme/knx-eib_system.html (Accessed: 5 May 2015) Crestron, “3Series Platform”, http://www.crestron.com/products/control_systems/3series/ (Accessed: 5 May 2015) Nikola Tesla, “Method of and apparatus for controlling mechanism of moving vessels or vehicles,” U.S. Patent 6 138 09A, July, 1., 1898. Pioneer, “Pioneer Control App”, http://www.pioneerelectronics.com/PUSA/Home/Apps/Pioneer+Control +App (Accessed: 5 May 2015) Crestron, “Mobile Apps”, http://www.crestron.com/products/crestron_mobile_apps/ (Accessed: 5 May 2015) BACnet - A Data Communication Protocol for Building Automation and Control Networks, ANSI/ASHRAE Standard 135, 2012 Wireless Short-Packet (WSP) protocol optimized for energy harvesting, ISO/IEC 14543-3-10:2012, 2012 Yong-Suk Park et al., “DLNA protocol analysis tool for smart device interoperability test,” 2015 Int. Conf. on Information Networking (ICOIN), pp. 464-465., Jan. 2015. Granzer, W. et al., “Gateway-free integration of BACnet and KNX using multi-protocol devices,” INDIN 2008. 6th IEEE International Conference on Industrial Informatics, pp. 973-978., July 2008. Belter B. et al., “Programmable Abstraction of Datapath,” 2014 Third European Workshop on Software Defined Networks (EWSDN), pp. 712., Sept. 2014. HTML5, W3C Recommendation, 28 October 2014 Texas Instruments, “CC2540/41 Mini Development Kit”
Architecture of a GPGPU-accelerated framework for pattern searching Tamás Fekete
Gergely Mezei
evosoft Hungary Ltd. Budapest, Hungary
Budapest University of Technology and Economics Budapest, Hungary
and explain how we made our framework more robust. Finally, in Section V, we conclude and discuss the results of our measurements and some potential research directions.
Abstract—Nowadays, general purpose personal computers often contain a separated GPU card. The card can be used to extend the computing power of the CPU. This possibility is getting bigger and bigger focus in several areas such as bioinformatics or audio signal processing. Our overall goal is to build a heterogeneous GPU-CPU based framework which can search for user defined patterns in a domain-specific model. Efficient pattern searching is useful in various fields, for example in refactoring software systems. To build our framework we must face with two important challenges: (i) performance and (ii) scalability. Performance means that pattern searching must be as fast as possible, while scalability means here that we must support models of arbitrary size. In this paper, we study this two points and provide solutions to them based on a case study.
II.
There are several differences between the architecture of GPU and CPU. One of the biggest challenges is to apply an efficient data and algorithm mapping between the host (CPU) and the GPU. Beside of this, the implementation is challenging as well, because programming of the GPU card may require experience in hardware close working. Many research groups try to solve these problems and to provide generic solutions. Usually they re-implement the most frequently used algorithms to make it able to run on GPU efficiently and they create a wrapper to those algorithms.
Model transformation; GPU; OpenCL; Parallel-computation; Pattern-searching
I.
RELATED WORK
We studied several papers and some of them faced with similar problems to ours. The paper [2] presents an optimized CPU-GPU implementation to search for Euler circuit on a randomly generated Eulerian graph. The graph consist 4096 vertices, 1.7 million edges and the proposed algorithm can find the Euler circuits in about 1 second. The GPU-based implementation is 50 times faster than the best sequential CPU implementation. In order to achieve this result, they needed to transform the data structure and the algorithm into a format which is effective on the GPU card.
INTRODUCTION
The goal of our research is to create a pattern matching framework based on a heterogeneous GPU-CPU architecture. We are going to use this framework to find user defined patterns in domain specific models. The creation of the framework resulted in two major challenges: (i) achieving high performance and at the same time (ii) granting scalability. In this paper, we illustrate and analyze these challenges and provide solutions to them. The paper is based on experiences gained from a case study. In the case study, the model is created from the freely available Wiktionary dictionary [1]. Wiktionary is a multilingual dictionary containing words and their translations to several languages. The model consists of word pairs, which are translations of each other e.g. “HU Alma” – “EN Apple”. From this dictionary a graph is built. Each vertex in the graph is a word, while edges represent their translations. Our task is to find paths between the vertices. One path between two vertices means that they are probably synonyms to each other. In case of two disjoint paths, the two words can be said synonyms with a high probability. Since we are going to find all synonym candidates, we search for the patterns in an exhaustive style.
The research in [3] is also related to our case study. Most of the graph algorithms can be solved on the GPU card more efficiently than on the host side, because sometimes graph algorithms can be rewritten to highly parallel calculations. They considered several popular graph problems and modified them to achieve a GPU-based version. They created a library which is called BerRed. The software building blocks are implemented on the top of the OpenCL framework. They presented the performance of the library on a case study. The main advantages of the BerRed library are its portability and the fact, the programmer does not need to care of the kernel code writing and hardware close working. BerRed cannot be used for general pattern-searching in graphs.
The paper is organized as follows: In Section II, we introduce some GPU-related researches and an algorithm for finding even length circles in graphs. In Section III, we describe the base architecture of our framework, the data structures and the main design concepts. In Section IV, we introduce accelerating techniques to increase the performance
In [4], it is introduced how important and critic the graph processing components are nowadays. The paper also focuses on the algorithm mapping between the host and the GPU. They compiled 12 graph applications, studied the performance and suggested several approaches to increase the performance of the GPU-based algorithms.
13
Considering the circle finding problem, there are some existing algorithms. For example, in the [5], an efficient algorithm is described to find even cycles in an undirected graph. It is close to the current case study, but it is not optimized for GPU card and works only on circles with even length.
function calling, therefore we nested for loops instead. The number of loops reflects the length of the circle. Fig. 1. illustrates the nested for loops for five length. for (vertex in eachVertices) for (n1 in neighbours of vertex) for (n2 in neighbours of n1) for (n3 in neighbours of n2) for (n4 in neighbours of n3) for (n5 in neighbours of n4) if n5 == vertex then order (n1, n2, n3, n4, n5) in VerRes array add Vertices to the results
The researches mentioned are close to ours, but the main difference is that these solution work on special graph patterns only, while we are going to use the GPU card for general model transformation, with all kinds of graph patterns in a platform independent framework. III.
ARCHITECTURE OF THE FRAMEWORK
For the implementation, we used Microsoft Visual Studio 2013, C++ language with STL library, its MS Windows STL extension and the Boost library on an Intel Core i3 CPU. Considering the video card an NVIDIA 710M was used. To access the GPU card we used the OpenCL API [6]. Since at the time of our research NVIDIA supported only OpenCL 1.1, we were restricted to use this version. The main advantages of the OpenCL framework over CUDA is that OpenCL can be used on heterogeneous platforms, e.g.: CPU, GPU, DSP and FPGA. OpenCL provides a general interface and each hardwarevendor can and must provide their own implementation.
Figure 1. Pseudo code of finding even length circles in a graph
In case of new result, the current thread must reserve enough memory in the commonly used buffer. The result is sorted on the GPU device (we use insertion sorting algorithm [7]), but we process it on the host. To store the results, we use a hash table on the host. The advantage of using a hash table is that the cost of finding an element is O(1). Since we use hash table, we need a little bit more memory, but the time is more critical in this scenario. Before adding a new circle to the table, we check whether it is already contained and thus circle duplication can be avoided.
A. The architecture The most important components of our framework are the followings:
C. Dynamic behavior CTaskRunner component is responsible for managing the initialization and running tasks. The component collects each requested tasks, their processors and – after the successful initialization – all of them are queued for late evaluation. Finally, the CTaskRunner indicates the CLogger component to print the CResult. The main steps which are evaluated during execution:
(1) CTaskBL: It is responsible for the business logic of pattern searching. CTaskBL gets and uses the kernel binary. (2) CGraphProcessor: It manages to process the graph and to write the result into the output. This part is also responsible for transforming and encoding of the model.
(1) The CGPUBusinessContext creates the main OpenCL context and the command queue. It is delegated to all other components.
(3) CResult: The result data is stored by this component.
(2) The CGraphProcessor reads the models from the input source. It is also responsible for mapping the data structures into a GPU-friendly format.
(4) CGraph: The graph data is stored by this component. Besides of the base elements, there is a dedicated CGPUBusinessContext component which initializes the connection between the host and the GPU card. At the same time, this context stores each run-time object provided by the OpenCL API. According to the OpenCL standard, the kernel code is not directly part of the framework, but the framework is responsible for handling the kernel code.
(3) Initialization of the CTaskBL component is the following step. (4) The calculation is done on the GPU in one or several steps. (5) During executing the kernel code, the CTaskBL is responsible for handling events like result buffer overflow.
Our architecture provides an easy way to add new business logic to realize a new task by extending only a small part of the implementation. If a new task requires a new model representation, a new CGraphProcessor can be added to the framework with a new CGraph and a new CResult. The interface-oriented programming technique supports this extension.
(6) After the successful calculation, the CTaskRunner must pass the CResult to the CGraphProcessor which is responsible for processing it. (7) Finally, we must reinitialize the CTaskBL and the CGraphProcessor components for reusing in case of another task.
B. Kernel code CGPUBusinessContext is responsible for compiling the kernel code. OpenCL 1.1 does not allow us to use recursive
14
D. Data structure The original, two dimensional structure of the graph is mapped into two one dimensional structures (Fig. 2): (i) The first structure contains the list of the neighbors one by one from the first to the last vertex. (ii) The second structure contains the starting positions of the neighbor lists. The second part is a helper structure to process the first one. Using this two arrays and the size of the second array, the implemented OpenCL kernel code can calculate the circles.
A. Achieving higher performance To achieve higher performance, we considered four main concepts: (1) We need to increase the number of the parallel calculations as much as possible. (2) We should process one vertex only once. (3) We need to choose an optimized number of the worker threads. (4) We should also optimize the memory management of the kernel code. Searching for the patterns in the graph is applied in several parallel steps. Fig. 3 shows the process flow diagram of parallel working. In each step, only a part of the model is processed. The process is repeated until each vertex has been processed. Using more than one iteration to process the model has two main advantages: (i) There is no need for a huge buffer size. (ii) The result buffer can be processed in parallel, while the kernel is searching for new results.
Figure 2. Mapping the data between the host and the GPU
Processing one vertex only once can decrease the time of the calculation. Before a worker thread steps to the next vertex, it checks whether the vertex is processed already. Each vertex is represented as one bit showing whether the vertex is already processed. With this technique we could achieve about five times faster calculation speed. We did measurements for four and six length with the same result.
During the design of the framework, the data copying between the GPU device and host is important. In fact, the less data we copy, the better performance can be achieved. Our data structure requires minimal memory allocation on the global memory of the GPU. According to our measurements, copying the data between the host memory and the GPU device takes less than one percent of the total time consumption in the test scenarios.
To choose the number of the worker threads, NVIDIA suggests multiples of 32 for the currently used GPU card. According to our measurements, there is a point, from where we cannot achieve significantly better performance by increasing the number of worker threads. Fig. 4. shows the performance in function of the worker thread number. The reason of the performance increasing is that the slowest thread also must complete before the current step completes.
IV.
ACCELERATING THE PERFORMANCE OF THE FRAMEWORK AND IMPROVING THE SCALABILITY
In the current case study, the input size of the graph is approximately 14 Mbytes. The generated dictionary contains 514 047 pairs of words. The number of the results is 1 086 900 in case of five length circles. Obviously, the size of the input model and the result can be much bigger in general and it can cause memory problems. We designed and tested several techniques to improve the performance and the scalability of our framework.
Figure 4. Increasing the worker thread number causes better performance
In [8], there is an overview of the OpenCL standard and a detailed explanation of the performance characteristic. Using shared memory is the most expensive and therefore we avoid the usage of the shared memory (shared memory refers here to the host memory). Instead, the graph is stored in the global memory of the GPU card which is the largest memory on the GPU device and can be accessed from each worker thread. Local memory can be read by the worker threads from within one working group. Because accessing the local memory is faster than accessing the global memory, we store as many Figure 3. The process flow diagram of the pattern searching
15
variables here as possible. The fast local memory handling motivated us to increase the local working group size. The private memory is very small in the current case and we use it only for the very frequently used variables.
than the pattern matching itself. Therefore, our solution is to download to the GPU as big part of the graph as possible. The vertices that cannot be processed on the GPU device are processed on the host side. In this approach the best solution must be very close to the version when the whole graph is downloaded. We did simulation for input model dividing: we restricted the available memory for the input model and could achieve high performance.
To illustrate the advantages of the GPU usage, considering the performance, we created the CPU version of our framework and compared the results. We tested the algorithm with five and six length circles. We repeated the test 50 times with the same input data for getting accurate results. The average time needed to find the circles is 159 and 2041 second in case of CPU-based version and 101 and 1224 second in case of the GPU-based version. As it can be seen, parallel computing resulted better (50%+) performance. The reasons - why we could not achieve even higher performance - can be the followings: (i) Creating the graph and processing the results require significant time and these steps cannot be parallelized. (ii) In the current hardware selection the CPU has strong computation capacity compared to the GPU. (iii) The pattern we search for is very simple and pattern matching does not have any time consuming checks. In case of a more complex patterns, the time of the computation takes longer time and thus the performance gain would be higher.
Figure 5. Choose constant value for the initial thead number calculation
V.
Our research focuses on creating a framework which is able to find predefined patterns in a model. While creating the framework, we used a case study of finding circles in a graph. We identified and solved two challenges: increasing the performance and robustness. In this paper, we elaborated our experiences, conclusions and solutions. We applied measurements and proved the correctness and showed the behavior of our solutions. Based on these experiences, our future goal is to create the general pattern matching framework based on GPGPU techniques.
B. Achieving scalability There is a chance that the whole model cannot be copied into the global memory of the GPU, because the data is bigger than the amount of the memory which can be allocated. This issue appears in case of the result buffer size as well. When an overflow occurs at the result buffer, we cannot simply increase the buffer size, because the maximum size of the buffer is already in usage. Instead, the framework controls the size of the result. The required size depends mainly on the number of the worker threads. Barely used buffer can also increase the calculation time. There are three situations when the number of the worker threads must be calculated: (i) setting of the initial number of the worker threads, (ii) when buffer overflow occurred and (iii) when the buffer is barely used. To get the initial number of the threads, we need one test measurement using only a few number of worker thread (1). To handle the buffer overflow and the barely used buffer, we must do re-calculation of the thread numbers according to (2). We must also define the barely used buffer size like in (3). newThreadNum initThreadNum *
max BuffSize *C currentBuffSize
ACKNOWLEDGMENT This work was partially supported by the European Union and the European Social Fund through project FuturICT.hu (grant no.: TAMOP-4.2.2.C-11/1/KONV-20120013) organized by VIKING Zrt. Balatonfüred. REFERENCES [1] [2]
(1) [3]
newThreadNum initThreadNum* C
(2)
max BuffSize >C currBuffSize
(3)
CONCLUSION
[4]
In each case, C refers to a constant number. We set its value by applying several measurements. There is an example measurement in Fig. 5. for finding the C value for (1).
[5] [6] [7] [8]
Considering the size of the graph, the situation is even more difficult. We cannot use a complex algorithm to divide the graph, because the partitioning process would take more time
16
Wiktionary: https://en.wiktionary.org/ Jiachun Ye, SongnianYu, “Accelerating finding Euler circuit on CPUGPGPU heterogeneous architecture” Mechatronic Science, Electric Engineering and Computer (MEC), 2011 International Conference on Shuai Che, Bradford M. Beckmann and Steven K. Reinhardt, “BelRed: Constructing GPGPU Graph Applications with Software Building Blocks” High Performance and Embedded Computing (HPEC), 2014 Qiumin Xu, Hyeran Jeon, Annavaram, M., “Graph processing on GPUs: Where are the bottlenecks?” Workload Characterization (IISWC), 2014 IEEE International Symposium on Raphael Yuster and Uri Zwick, “Finding Even Cycles Even Faster.” SIAM J. Discrete Math., 10(2), 209–222. (14 pages) The Khronos Group: https://www.khronos.org/opencl/ Insertion sorting: http://en.wikipedia.org/wiki/Insertion_sort Jonathan Tompson, Kristofer Schlachter “An Introduction to the OpenCL Programming Model”
Monitoring and Troubleshooting in SDN Networks Using EMACS Istv´an Pelle∗ and Andr´as Guly´as HSN Lab, Department of Telecommunications and Media Informatics Budapest University of Technology and Economics Email: {pelle,gulyas}@tmit.bme.hu Abstract—Software Defined Networking (SDN) is an architectural concept gaining more and more acceptance from the networking industry. The SDN concept separates the data forwarding and control planes of switching devices and opens the control plane to be programmed by external controllers almost arbitrarily. This philosophy gives the possibility to design more innovative and flexible networks than before. In turn, SDN can make network troubleshooting more difficult though. As many parts of the architecture run in software, software errors, bugs or failures can appear in various SDN components including switches, controllers and middleboxes. Since SDN is quite a young concept, there are not many network debugging solutions that provide integrated troubleshooting tools for finding network and software problems. In this paper we outline the functionalities that an integrated network troubleshooting tool needs to implement and then describe a prototype implementation based on the GNU EMACS platform.
I.
I NTRODUCTION
The success story of the software industry can be attributed to the well-defined and open interfaces that enable writing software on a wide range of platforms. The current situation in networking is quite different: a few vendors manufacture closed hardware boxes, run proprietary operating systems and closed applications. Consequently, the networking industry is small, rigid, and lacks innovation. Software Defined Networking (SDN) promises a way out of this techno-economical trap, adopting the philosophy of open software development. The concept has huge backers already and new ones are constantly signing in. SDN has its own standardization organization, the Open Networking Foundation which was founded by Deutsche Telekom, Facebook, Google, Microsoft, Verizon and Yahoo! to specify and develop standards for the concept. Later many other companies joined ONF as members: Alcatel-Lucent, Cisco, HP, NEC, Oracle and Vodafone just to name a few [1]. Industrial and research uses of SDN are also spreading: Google and Stanford use it in their networks and others in data centers, LAN, WAN and service provider environments. SDN is also a very hot research topic and lies in the mainstream of major networking related scientific conferences. Besides introducing programmability and unleashing innovation in networks, an important goal of SDN is to reduce both capital and operational expenditures by making the management and administration of networks easier [2]. To reach this goal, SDN defines a layered architecture that separates data forwarding and control planes [3]. As shown in ∗ Research
work for this article was supported by the Pro Progressio
Foundation.
17
Fig. 1: Simplified SDN architecture from a troubleshooting perspective. Fig. 1, a network operating system creates an abstraction of the physical network and exports it to networking applications using an SDN API. On top of the network OS, applications (e.g. network controllers) can be developed that do not interact directly with the physical components of the network. This abstraction makes the configuration of the network much easier compared to the traditional network building approach, since applications can access the network via a unified interface. The lowest layers in Fig. 1 (the hardware and its firmware) deal with data forwarding, while the upper layers provide controlling functions and the network OS is responsible for maintaining the connection between them. Data forwarding nodes (e.g. switches) do not have to have complex intelligence built in, they can rely on the controller in making complex packet forwarding decisions, which in turn can be cached in the forwarding table of the switch. When a switch receives a data packet that it previously have not met, it forwards that to the controller. Based on its knowledge of the network and built in algorithms, the controller decides which path this and all following similar packets have to take and informs the switch about this [4]. OpenFlow is a standard protocol between the physical layer and the network OS that allows controllers to manage the coordinated package forwarding. Current network operating systems implement the OpenFlow protocol on their southbound interface facing the network instruments. On their northbound interface they offer APIs to be accessed by the controller applications. The SDN control plane consists of software entities (e.g. controller applications), thus creating a software defined network has many resemblance to software development. One
major difference is though that debugging in a networking environment can be more wide spread. In a classic networking environment failures are generally caused by misconfigurations or hardware failures. With a software based controller in the picture, malfunctions now can be caused by bugs that can be anywhere in the SDN stack. To make troubleshooting even harder switch states might change rapidly and bugs might show up rarely. II.
T ROUBLESHOOTING IN SDN AND OTHER NETWORKS
SDN networks differ from conventional networks in many ways when being configured or debugged. By moving up from the lower layers of the architecture (see Fig. 1) we first come in contact with the forwarding instrumentation. In a traditional network here we would find physical devices, but considering SDN, that might not always be the case. SDN can effectively work together with Network Function Virtualization (NFV). The former can virtualize networks, the latter resources and network functions. The resource virtualization concept adds more network elements implemented in software, which might need debugging when attached to a network. Moving further up in the architecture, SDN provides the option to create different logical views of the same physical network layout [3]. SDN offers support to virtually separate the network into different fully or partially isolated sections that can have only limited communication with each other or not at all. A similar option is available for traditional networks in the form of creating virtual networks (VLANs). SDN can take those capabilities provided by VLANs even further though, by providing a more scalable and flexible way for managing the virtual networks using a network hypervisor that can slice the physical view of the network into multiple logical views. Using the controller or the hypervisor one can create network slices that use different packet forwarding rules than others. This way production and experimental forwarding methods can coexist on the same network [4]. Finding the root cause of a problem in a sliced network is complicated. First the appropriate layer of the architecture should be found that causes the errors then the software bug should be identified. Identifying the root cause again calls for joint knowledge of network and software engineering, but integrated software tools could aid the process by collecting data from the network OS, hypervisor and controller. The topmost layer of the SDN architecture is for the applications that maintain network policy [3]. In a traditional network, creating and enforcing a policy can be a tedious work: network elements should be configured individually and in many cases manually. If the devices are from the same vendor, tools can be used to create the configuration only once and then tailor the settings for each element. There is no utility though that can universally create the settings that would result in the same behaviour when devices from different vendors are used, much less when different network protocols should be supported. If a device gets misconfigured during a policy change, it can be highly non-trivial to find which network element has the problem since only basic network diagnostic tools are available. Using an SDN based approach, this task would basically turn into a software development process. An engineer needs only to write an application (a controller or part of the controller) that acts upon the rules defined by the
18
policy and enforces these rules on every network element it has control over. The controller can get every information it needs from the network by accessing the network OS but it does not need to deal with distinguishing between the different network elements – the protocol running between the network OS and the elements takes care of that. When a policy change has an unexpected effect, it can be the result of a hardware failure, miscommunication between the controller and the network element or a software bug in the controller code that deals with the rules. SDN can provide tools for diagnosing the first two and software debugging and verification methods should be used for detecting the last. All in all SDN gives more sophisticated tools for identifying misconfigurations, but it also introduces the possibility of software errors, one thing that the traditional network troubleshooting does not have to take into account. Finding such software bugs requires the combined expertise of a network and a software engineer. III.
D ESIGN CONSIDERATIONS FOR INTEGRATED SDN TROUBLESHOOTING
We argue that troubleshooting in SDN networks requires the consolidation of traditional network and software debugging tools, with SDN-specific tools taking advantage of the extra information the SDN architecture can provide. Here we outline the features of an integrated SDN troubleshooting tool by collecting the necessary options that it should support. Using the tool one should be able not only to detect where the problem is, but also to find its root cause. To effectively troubleshoot a network problem one has to use different methods on each layer of the SDN architecture. Required tasks are identified on the right side of Fig. 1. To perform debugging in a traditional network, specific traffic needs to be injected into the network and then be followed. The question of concern is the route the traffic takes. Conventional network debugging tools provide mostly separate functionalities, so to unfold a complex network problem many of them should be used simultaneously. To successfully find the problem one must know these tools and have the knowledge of how to combine their separate possibilities. Such tools are e.g. ping that is used for testing IP reachability and round-trip times; tcpdump that is a command line tool that can be used to intercept packets and display their contents; traceroute which has the ability to track the path packets are taking, and the time they spend to reach each forwarding point on their way to the endpoint. Looking at the troubleshooting problem on a software defined network, the root cause can be a bug in the controller or in any of the architecture layers. Fig. 2 describes the architecture we designed to aid troubleshooting in an SDN based network. The components in the architecture were designed to satisfy our list of fundamental features. The troubleshooting components communicate with the layers of the SDN architecture through the specified interfaces. To provide interaction between the components, we defined a framework that implements functions that join the components together. Low layer troubleshooting contains basic elements to interact with those network layers that are under the network OS. On the lowest layer traffic generation and monitoring is the main concern. Hypervisor troubleshooting provides access to the inner states of the network hypervisor, while controller troubleshooting encompasses basic functions necessary for
Fig. 2: Architecture of our SDN troubleshooting tool. interacting with controllers and applications. In what follows we outline the fundamental features a concrete integrated troubleshooting tool – implementing our architecture – should provide for the effective identification of networking bugs. This list was based on the concept of defining requirements of such a tool that could help troubleshooting in a conventional network and by taking advantage of new functionality provided by SDN, is capable to offer extra network insight and envelopes these in an integrated environment. We found these features essential for effective troubleshooting but in time others can be added also. 1) Consolidate existing, general network troubleshooting tools. Using the most rudimentary tools like ping, traceroute, etc. separately has the difficulty of having to follow the output of many tools and applications simultaneously. An integrated system should support the effective assembling of such tools for a given purpose. 2) Integrate available SDN-specific tools. SDN researchers and developers created a wealth of sophisticated stand-alone tools for tracking down SDN specific bugs of a particular nature. For example DPCTL or OFCTL can be used to query switch status, flow tables and statistics. NDB (Network DeBugger) provides SDN debugging functionality as if a software was being debugged [7], OFRewind is a software that captures traffic in a network and can later replay it [8] and NICE helps to address the problem of finding out whether a controller and its attached network do what they are intended to do, or not [6]. These tools can only be used in specific cases and they cannot support troubleshooting conventional networks [3]. 3) Integrate software debugging tools. Since SDN applies software in ups and downs of the architecture, software debugging tools must also be consolidated. To provide software debugging and monitoring functions various programs can be used. GDB is a debugger that supports debugging of code written in many different programming languages [3]. Valgrind is a framework that provides software profiling abilities such as memory error detection, thread error detection, call-graph generating cache and a heap profiler [3]. To provide thorough debugging the tool needs to have the ability to attach to a running program that might be a software running on a host or the controller. Since the tool is to be used for debugging a network with possibly many different hosts, switches and a controller, it should provide options to access them remotely.
19
4) Allow flexible assembling of the consolidated tools for a specific troubleshooting problem. The tool needs to provide the option of handling the network elements and existing tools in an integrated environment that should not require looking at many different shells. This is not a feature existing tools have. The problem with traditional tools is that they offer specific functionality to specific tasks. They are used separately, have different input arguments and different output format that cannot be easily mapped to each other. Though using a multiple window/multiple shell approach one can solve most troubleshooting scenarios but the constant switching between windows would take a toll on the effectiveness of the process. So the tool should be able to provide its functionality by reusing previous tools, thus it needs to provide a wrapper around them that can translate between the different output and input formats. Traffic generation tools should also be supported. 5) Co-operate with the network hypervisor. When a network hypervisor is in use, a network can be sliced into different virtual networks. The mapping between the logical and physical views should follow the intentions of the network engineer. To check whether the mapping works as intended, network topology needs to be queried both on the network OS and the controller side. 6) Work together with different controller platforms. It should hide the different methods used for communicating with the controllers. Most controller platforms are accessible via REST APIs. Since the API calls are different for each platform, the tool should provide wrappers for these APIs. The tool should also be able to display only the information that is required to perform an analysis of the network. Unnecessary information needs to be hidden by way of using filters: specific flows or flow entry fields should have the option to be filtered out. We note that shell scripts would be one possible option to accomplish these functions, but they miss easy configuration and extensibility. Another option could be a modern IDE-like tool with graphical user interface, like Eclipse, but that would be resource heavy and would get too far from the CLI nature of network debugging. Thus EMACS was chosen as a platform to offer an integration for the functions since it offers the concept of buffers that can be associated with shells, has builtin modules that can support the switching between debugging tools, has a good integration with GDB and remote operation and has a small memory footprint. IV.
A N EMACS BASED PROTOTYPE
To support connecting different network debugging tools we developed a prototype that satisfies the requirements mentioned above. It defines the concept of a troubleshooting graph. This graph consists of nodes that are wrappers for basic troubleshooting functionalities and links between them. Wrapper nodes define input parameters for the network debugging tools they contain and outputs that must have a standard format so that other nodes can process the information as their inputs. To aid graph specification the tool provides hint functions that give information about node configuration, in- and output parameters. Graph definitions can be written in a file and when ready can be executed. The tool provides an event handling framework that schedules the execution of each node’s code and notifies the nodes when they have new data on their inputs.
(stat − 1 and stat − 2) that query the two switches. The outputs of the querying nodes go to flow space filtering nodes that select only the interesting data flow. The display and the validate − balancing nodes receive the filtered data. The former displays the filtered flows in a table by concentrating on packet count as seen on the lower part of Fig. 3. The latter node compares the incoming flow stats’ packet count parameter and if those do not match what was expected of the balancer, it sends a signal to the gdb node. This node is configured to wait for an enable signal, and when it receives one, starts a GDB session that attaches to the balancer application specified in the troubleshooting graph configuration file. At this point GDB takes over the execution and the inner workings of the balancer can be followed through. Fig. 3: Use case: validating a load balancer with our tool. The upper window shows the created troubleshooting graph, the lower the filtered flow statistics. When execution starts, nodes and links are mapped to EMACS buffers and configuration parameters are converted to bufferlocal variables. An event queue is set up and when a node has the proper inputs it executes the troubleshooting function contained in its core and puts the result on its output. Nodes can be added by troubleshooting personnel by writing wrapper nodes in EMACS’s own Elisp language [5]. There are only a handful of functions that a node has to implement, other functionality can even run outside of EMACS. We designed the tool in a way that makes the least assumptions on tools that are reused. It is only the node developers’ skill set that limits new functionality. Communication with network OSs is now supported using their REST API, hypervisor support can be added in a similar way. Currently our prototype only supports a limited amount of nodes but these are enough to create useful basic troubleshooting graphs. We have nodes wrapping basic conventional and SDN troubleshooting tools and we have also implemented convenience nodes for flow space filtering, structured displaying of incoming data and clock nodes for coordinating the actions (e.g. simultaneous iperfs) of other nodes. On top of these, the tool is deeply integrated with EMACS, thus employs EMACS’s arsenal to ease the handling of troubleshooting graphs. Navigation between nodes and links is accessible by using key combinations, using EMACS’s IDO package intelligent suggestions are offered when multiple choices are available. The troubleshooting graph can be visualized (see Fig. 3) with the help of EMACS’s COGRE package and the Graphviz software. Here moving among nodes can be done using either a mouse or key combinations. Nodes can be reconfigured on the fly with EMACS widget based forms. The framework provides aggregation and validation functions that can help setting node parameters when a node is being reconfigured. V.
Since currently only a small number of features are supported by the prototype, other use cases are limited. Some basic tasks can already be performed with our current set of nodes though. Network performance can be monitored by using the iperf node and reachability can be tested with the ping and traceroute nodes. Flow statistics can be queried from POX, Floodlight and OpenDaylight controllers. Results generated by these nodes can be collected by the node that displays them in a structured format. VI.
Troubleshooting a network is a hard task. By extending the possibilities of traditional networking, SDN can offer new ways to find errors, but in exchange it introduces software debugging requirements. One can use many different tools that provide help for network and software troubleshooting but there are no universal tools. In this paper we have presented a design of a tool that has the ability to integrate existing tools and introduced a prototype of the concept built on GNU EMACS. We have illustrated the usage of the framework through a realistic case study, which may give ideas to implement new wrapper nodes for other existing troubleshooting tools. Our main future plan is to add wrapper nodes to support a wide range of available general and SDNspecific troubleshooting tools and extend on the framework functionality by providing easy troubleshooting graph creation and use and offer even better interconnection of nodes. R EFERENCES [1] [2] [3]
[4]
[5]
A N EXAMPLE TROUBLESHOOTING SCENARIO
A possible use case for the tool would be to check a network having a load balancing switch that is controlled by an SDN application. To validate the balancer, it is enough to check the states of the two switches that are next hop in the upstream from the load balancer. The corresponding troubleshooting graph can be seen on Fig. 3. It contains a clock node that enables a traffic generator and two flow stats querying nodes
20
C ONCLUSION AND F UTURE WORK
[6] [7]
[8]
Various contributors, ONF Overview, Open Networking Foundation, 31 March, 2015. Various contributors, Open Networking Foundation White Papers, Open Networking Foundation, 31 March, 2015. B. Heller, et. al, Leveraging SDN Layering to Systematically Troubleshoot Networks, Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking, pp. 37-42, 2013. N. McKeown, et. al, OpenFlow: Enabling Innovation in Campus Networks, ACM SIGCOMM Computer Communication Review, Volume 38, Number 2, April 2008 R. Stallman, EMACS The Extensible, Customizable Self-Documenting Display Editor, Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation, pages 147-156, 1981. M. Canini, et. al, A NICE Way to Test OpenFlow applications, NSDI, volume 12, pages 127–140, 2012. N. Handigol, et. al, Where is the Debugger for my Software-Defined Network?, Proceedings of the first workshop on Hot topics in software defined networks, pages 55–60. ACM, 2012. A. Wundsam, et. al, OFRewind: Enabling Record and Replay Troubleshooting for Networks, USENIX Annual Technical Conference, 2011
Private Key Delegation in Attribute-Based Encryption Máté Horváth Laboratory of Cryptography and System Security (CrySyS Lab) E-mail:
[email protected] Abstract—The focus of this work is to find ways to make attribute-based encryption (ABE) more suitable for access control to data stored in the cloud. However, ABE provides a flexible solution for “one to many” encryption, its adoption to the cloud environment require further refinement. One such issue is the assumption that secret key requests can be verified by one central key generator authority, which is often not realistic. The other is the problem of user revocation, for which a solution is essential in every real-word system, where unexpected events may occur. In contrast to the technically difficult multi-authority schemes (with user revocation feature), we investigate the feasibility of a much simpler approach: enabling secret key delegation in single authority schemes (with user revocation feature). We show key-delegation algorithm for one of the most important single authority ABE construction, and also for its extension that allow user revocation, thus achieving the desired features.
I.
I NTRODUCTION
Cloud computing is an emerging paradigm of information technology, by which computer resources are provided dynamically via Internet. Besides cost savings, flexibility is the main driving force of outsourcing for instance data storage, although on the other hand it raises the issue of security, which leads us to the necessity of encryption. In order to fulfil the new requirements of the cloud environment, that traditional cryptographic protocols handle inflexibly, new schemes have appeared. Attribute-Based Encryption (ABE) was proposed by Sahai and Waters [SW05] as the generalization of Identity-Based Encryption. Contrary to traditional public-key cryptography, ABE is intended for one-to-many encryption in which ciphertexts are not necessarily encrypted to one particular user, but for those who fulfil certain requirements. These requirements are related to attributes and access policies, namely decryption is possible if and only if the attributes satisfy the access policy. Goyal et al. [GPSW06] distinguished the two main variants of ABE, called key- and ciphertext-policy (KP/CP) ABE. The latter associates ciphertexts with access policies and attributes describe the user, accordingly these are embedded in the users’ secret keys. A ciphertext can be decrypted by someone if and only if, his attributes - in his secret keys - satisfy the access structure given in the ciphertext1 . In this concept the encryptor defines the access policy (usually expressed by a Boolean formula with AND , OR gates) and the key-issuer act as a certifier who gives out an attribute secret key to a user, 1 Contrarily,
in KP-ABE attributes are embedded in the ciphertext and the access policy in the secret key, with other words “intelligence” is assumed to be with the key issuer, and not the encryptor.
21
only after it was made sure that he is eligible for that attribute. In a cloud computing scenario it is a natural expectation of a user to have the right of determining the access policy of the shared data, so in this work we are going to restrict our attention to CP-ABE. To meet the requirements of larger scale organizations that are intended to outsource data storage, CPABE still needs further refinement. The assumption that a central key-generator authority is able to check the validity of all kinds of attributes in an institution is maybe unreasonable. For instance, in a university Alice may want to share some data with demonstrators, who are working on homework assessment. This target group can consist of undergraduates and other employees of different departments. To check whether an undergraduate student is truly a demonstrator of some department, before giving her the attribute “D EMONSTRATOR ” is probably out of a university level authority’s scope. Much more realistic to have the departments own authority for this task, however this requires a multi-authority setting, which is more complicated than standard single-authority schemes. The other relevant issue is user revocation, as a tool for changing user’s rights is essential in real life, when unexpected events may occur. Such occasion can be dismissal or the revealing of malicious activity, and we emphasise that user revocation is applied in exceptional cases like the abovementioned, as all other cases can be handled with the proper use of attributes. E.g. a demonstrator’s task usually lasts for a semester, and in the subsequent semester maybe different people will do the same tasks, although these expected changes can be handled simpler than revocation, by issuing more sophisticated attributes e.g.: “D EMONSTRATOR -2015/S PRING ”. We note that the difficulties of the above problems have the same roots in ABE: different users may hold the same functional secret keys (corresponding to their attributes) which are bounded together (personalized) with randomization, using the same random values in each element. On the one hand, this method assumes that the randomization happens all at once, in a centralized manner, and on the other the revocation of a user’s attributes affects all those secret keys, in which the revoked attributes were present. II.
R ELATED W ORKS AND O UR R ESULTS
Bethencourt et al. [BSW07] worked out the first CP-ABE scheme with a security proof in the generic bilinear and random oracle models. Waters [Wat11] improved this result both in terms of efficiency and security, giving a security reduction
to a Diffie-Hellman-type hardness assumption. The problem of multiple authorities was first considered by Chase [Cha07] who had to rely on a central authority. Decentralized CP-ABE of Lewko and Waters [LW11] get rid of this restriction and avoided placing absolute trust in a single designated entity, however it is achieved in a practically inefficient way. Attribute revocation was first considered in [BSW07], while Wang et al. [WLWG11] and Yang et al. [YJRZ13] applied this in the multi-authority setting, considering the cloud storage scenario. A different approach is identity-based revocation, in which a special, unique “identity attribute” is given to each user that can be negated in the access policy (for all attributes it cannot be done efficiently). This approach was applied to enable revocation in the scheme of [Wat11] by [LZW+ 13] and in the decentralized setting by [Hor15].
that describe the key. It outputs a private key SKγ for the corresponding attributes. Encrypt(P K, M, A) → CT The encryption algorithm takes as input the public parameters P K, a message M, and an access structure A over the universe of attributes. CT ciphertext is produced such that only a user that possesses a set of attributes that satisfies the access structure will be able to decrypt it and obtain M. We assume that the ciphertext implicitly contains A. Decrypt(P K, CT, SKγ ) → M The decryption algorithm takes in the public parameters P K, a ciphertext CT , which contains an access policy A, and a private key SKγ for a set γ of attributes. If these satisfy the access structure A then the algorithm will decrypt the ciphertext and return a message M.
In this work we investigate the viability of an alternative, much simpler approach instead of allowing multiple authorities in the system. We take advantage of the standard secret key generation algorithm in single authority CP-ABE constructions to enable the users to act as a restricted authority. More precisely, we supplement the CP-ABE with a key-delegation algorithm, that can be run by the user on any subset of his own secret keys resulting in new secret keys for the corresponding chosen attributes. Returning to our previous example, a professor with the attributes {“C RYPTO P ROFESSOR ”, “C RYPTO H OMEWORK A SSESSMENT ”} could give “C RYPTO H OMEWORK A SSESSMENT ” attribute to a student, who helps him in this task. This approach significantly decreases the verification and key-generation burden of the authority and distribute these among already verified users.
As our supplementing algorithm does not modify neither the functionality nor the operation of the above algorithms, we do not need the underlying tools of CP-ABE such as bilinear maps, access trees or linear secret sharing, so we omit the introduction of these here. For details on how the Setup, Encrypt and Decrypt algorithms work, we refer to the description of the used ABE constructions [Wat11], [LZW+ 13].
Such key delegation algorithm for ABE was first introduced in [BSW07]. [IPN+ 09] considered the question of delegation together with attribute revocation in the presence of a “mediator”, an additional, semi-trusted2 entity. Without such an extra assumption we extend two CP-ABE constructions with delegation algorithms. First we consider the efficient and secure construction of [Wat11], than we investigate the possibility of delegation in [LZW+ 13] where ID-based user revocation is also possible. We conclude that in spite of some natural restrictions, this simple approach is a practical alternative of the multi-authority solution and can fulfil the requirements of secure cloud storage.
IV.
K EY D ELEGATION IN S INGLE -AUTHORITY S CHEMES
In case of CP-ABE where keys are issued by a central authority, the right of attribute delegation is a realistic expectation. This feature can subdue the tasks of the authority, in terms of both computation and verification of users’ attributes. Of course our goal is not sharing of secret keys among users, but creating new secret keys without the master secret key, which have the same form and functionality as the ones that were created by the key issuing authority as it is depicted on Figure 1. γ (set of attributes)
Setup
Message
BACKGROUND
For our goal - to generate new secret keys for CP-ABE, using already existing keys and publicly available parameters - it is inevitable to know the structure of single authority ABE schemes. A Ciphertext-Policy Attribute-Based Encryption system is comprised of the following four algorithms: Setup(λ, U ) → (P K, M K) The algorithm takes security parameter λ and attribute universe description as input. It outputs the public parameters P K and a master secret key M K. KeyGen(M K, γ) → SKγ The key generation algorithm takes as input the master key M K and a set of attributes γ 2 Meaning that although it has no information about the plaintexts, it owns parts of the secret keys and has to be honest and available during the life-time of the system.
22
KeyGen
PK
τ
III.
MK
Encrypt
SK(γ) CT
SK(γ')
Decrypt ↕ τ(SK(γ)) = 1
Delegate ↕ γ' ⊆ γ
Message
SK'(γ')
Figure 1. The structure of CP-ABE schemes, supplemented with key delegation (where τ denotes the access policy).
A. Key Delegation in Waters’ Scheme In the scheme of [Wat11], the publicly available parameters (generated by the Setup algorithm) include a generator g of the prime order group G, g a with random (secret) exponent a ∈ Zp and U random group elements h1 , . . . , hU ∈ G associated with the attributes of the system3 . The master secret key (M K) is 3 An additional value, e(g, g)α ∈ G is also part of the public parameters, T but it is used during encryption, so we will not need it.
g α with random exponent α ∈ Z. The attribute secret key generation algorithm of the scheme (run by the authority) is the following: KeyGen(P K, M K, γ) −→ SKγ The key generation algorithm will take as input the master secret key M K and a set of attributes γ and output a key that associated with that set. It first chooses a random t ∈ Zp , then it computes the key as SKγ = {K = g α g at , L = g t , ∀x ∈ γ : Kx = htx }. Note that the only information, used during key generation and not available for a user is the value of g α , which only appears in K. Although, the delegation of secret keys (without sharing them) can be realized without this, as it is implicitly given to the user in his own private key. Delegation can be done in the manner of [BSW07]: after removing attributes x ∈ / γ0 ⊆ γ from the original key, by deleting the component Kx and re-randomize the remaining values. In order to re-randomize the components we would like to change the random exponent t to some (t + t0 ), where t0 ∈ Zp is chosen randomly by the user who delegates the key, so (t + t0 ) is a random number. To get this value in the exponent we have to multiply the original component with some power with index t0 . Re-randomization is possible if in all components the base of powers with index t is public. In this case we can raise them to the power t0 and multiply the result with the original component, gaining the re-randomized value. As the g a term was already available in the reduction of [Wat11], the security proof is essentially unaffected. Based on these observations the algorithm is the following: Delegate(P K, γ 0 , SKγ ) → SKγ0 0 The algorithm takes in a secret key SK, which is for a set γ of attributes, and another set γ 0 ⊆ γ. The secret key is of the form SK = (K, L, ∀x ∈ γ : Kx ). It chooses random t0 ∈ Zp then creates a new secret key SK 0 as 0
0
K 0 = K · g at = g α g a(t+t ) 0
L0 = L · g t = g t+t 0
0 0
Kx0 = Kx · htx = hxt+t
∀x ∈ γ 0 ⊆ γ.
This simple algorithm reveals that the [Wat11] construction inherently contain the opportunity of key delegation, which can be utilised to decrease the authority’s burden of verifying user’s key requests, as these can be handled by other users. This possibility can resolve the need for multiple authorities, especially in case of a hierarchical setting, where the attributes of a user form the subset of the attributes of someone, who is in a higher level in the hierarchy. This is a natural expectation e.g. in a corporate environment where the central authority might issue the keys for users belonging to the top ` levels, who can issue keys for employees under themselves in the hierarchy. B. Key Delegation and ID-based User Revocation In this part, we consider the possibility of key delegation, when ID-based revocation is supported by the system. We are going to use the construction of [LZW+ 13], which builds on [Wat11] and provides its extension. As negation of attributes in the access policy is an expensive operation (see [OSW07]) it
23
is allowed only for unique “identity attributes”. The ciphertext additionally embeds a list of revoked users and the decryptor is forced to compare his own ID with the list elements and decryption is possible if and only if no matching was found. To achieve this, the used keys and parameters are somewhat modified, i.e. the input of the KeyGen and Decrypt algorithms include the ID of the particular user and Encrypt takes in the IDs of already revoked users. The public parameters in [LZW+ 13] are extended with three elements, compared with 2 [Wat11]: an other generator h of group G, ha and g a (a ∈ Zp is still random secret), while M SK remains unchanged. In this case, the authority runs the following algorithm in order to generate secret key for a user with ID and attribute set γ: KeyGen(P K, M SK, γ, ID) → SKID,γ The algorithm takes a unique identifier ID, an attribute set γ, the master key M SK and the public parameters P K as input. First, it checks the unique identifier ID to see whether it has been queried before. If yes, γ must be the same as in the previous query and the algorithm outputs the same secret key; if not, then the algorithm chose a random t ∈ Zp and creates the private key SKID,γ as: 2 K = g α g at g a t , L = g −t , DID = (g aID h)t , ∀x ∈ γ : Kx = htx . The opportunity to revoke users raises several questions about key delegation. Should a system trust a user who delegates keys as much as it trusts the key issuing authority? What happens with those keys, which have been delegated by a user who was revoked later? Is it secure to allow users to create new IDs as well? To answer them, we must consider the possible consequences. Suppose that a user is allowed to create new IDs and delegate attributes to them (from among his own). If this chain of created IDs is not recorded, then someone can simply duplicate his attribute secret keys, attaching them to a new ID and after the original ID was revoked, just use this new one. To record and follow the ID and key delegation chain is overcomplicated and also against the spirit of delegation, that supposed to simplify the tasks of the authority and the system. However, without this, it is obviously not secure to let users to totally substitute the trusted authority when revocation can occur. In our proposal we make the key delegator responsible for the propagated keys in a simple way. As we have full trust only in the authority, which can verify whether an ID-attribute pair is valid or not, users are allowed to delegate their keys, only together with their ID. Practically it means, that from now on an ID does not represent a single user, but a user set, which contains one user with attributes from the authority and all of those parties who received their keys from that previous user or from someone who was already a member of that ID set. In this way, when an ID is revoked, it affects not only its original owner, but also everyone else who had delegated keys from any member of the user set with the revoked ID. The intuition behind this approach is that revocation is most often the result of some malicious activity, so we need to extend our countermeasures to all fields of the user’s activity. If this policy has unwanted victims from the revoked set, these users can ask for new keys from the trusted authority, after they proved their right to own the given attributes, or from the
party from where they received their previous key (if his ID was renewed). However, this method seems squandering, it is exactly the analogy of the more traditional attribute-based user revocation (applied by e.g. [WLWG11], [YJRZ13]), where the revoked attributes affects more users (those who owned any of the revoked attributes) than intended and these user’s keys must be updated. This observation roughly implicates, that until the cardinalities of the biggest sets of users with the same IDs are under the occurrences of the most often used attributes, our solution does not require more key updates after revocation, than attribute-based revocation either in the single- or in the multi-authority case. In this spirit, we give the following key delegation algorithm that supplements [LZW+ 13]: 0 Delegate(P K, ID, γ 0 , SKID,γ ) → SKID,γ 0 The algorithm takes in a secret key SKID,γ , which is for a set γ of attributes, and another set γ 0 ⊆ γ. The secret key is of the form {K, L, DID , ∀x ∈ γ : Kx }. It chooses 0 random t0 ∈ Zp then creates a new SKID,γ 0 secret key by computing the following components: 2 t0 0 2 0 t0 K 0 = K · (g a ) · g a = g α g a(t+t ) g a (t+t ) 0
0
Kx0 = Kx · htx = ht+t x
C ONCLUSION
In this work, we considered an alternative approach to deal with two obstacles of using ABE for the purpose of access control for data stored in the cloud. Evading the technically more challenging case of multiple authorities, we investigated the viability of key delegation by the users and found that this opportunity also can lead to a practical solution even when user revocation is possible, especially in case of a hierarchical structure of users. ACKNOWLEDGMENT This work was started as a master thesis at Eötvös Loránd University, in the Security&Privacy program of EIT ICT Labs Masterschool. I am thankful to my supervisor, Levente Buttyán from CrySyS Lab for his help and valuable comments and to the unknown reviewers for the useful remarks. R EFERENCES [BSW07]
∀x ∈ γ 0 ⊂ γ.
Note that we used the same re-randomization technique as before. In the algorithm the new keys are computed using only those values which were available in the original scheme as well, so the security proof of [LZW+ 13] remains unaffected. V.
VI.
0
L0 = L · g −t = g −(t+t ) t0 t+t0 ID 0 DID = DID · (g a ) h = g aID h 0
users, our revocation handling is more comparable with the attribute-based revocation of [WLWG11], where key updates might be necessary, just like in our case when not all members of a user set are intended to be revoked.
E VALUATION
Our latter result provides an alternative solution for CPABE, in which secret keys can be issued by multiple parties and user revocation is also possible. Essentially it is a very similar functionality as achieved in [IPN+ 09], [WLWG11], [Hor15] with different methods. From the perspective of security, [LZW+ 13] with our delegation inherits the original security argument, that is based on a Diffie-Hellman-type assumption (just like [WLWG11]), while [IPN+ 09] and [Hor15] are proven to be secure only in the generic bilinear group and random oracle models. In the other hand, a distributed scheme like [Hor15] can be more stable, as its security does not depend on the integrity of a single designated entity. Although from this point of view, our approach is equivalent to [WLWG11], where the authorities are not independent; and more beneficial than [IPN+ 09], where the proper operation requires two entities to remain intact, one of which (the mediator) also needs to be available all the time. In terms of usability, our proposal is quite natural in case of the above mentioned hierarchical organizations (which were also considered in [WLWG11]), as the verification of attribute requests can be done by the most competent parties i.e. by someone from an upper layer of the hierarchy. At the same time, we note that our stronger security guarantees result in a less flexible revocation than seen in [Hor15] or [IPN+ 09]. Because of the identification of user sets instead of separate
24
John Bethencourt, Amit Sahai, and Brent Waters. Ciphertextpolicy attribute-based encryption. In IEEE Symposium on Security and Privacy, pages 321–334, 2007. [Cha07] Melissa Chase. Multi-authority Attribute Based Encryption. In Theory of Cryptography, volume 4392 of LNCS, pages 515–534. Springer Berlin Heidelberg, 2007. [GPSW06] Vipul Goyal, Omkant Pandey, Amit Sahai, and Brent Waters. Attribute-Based Encryption for Fine-Grained Access Control of Encrypted Data. 2006. [Hor15] Máté Horváth. Attribute-Based Encryption Optimized for Cloud Computing. In G.F. Italiano et al., editor, SOFSEM 2015: Theory and Practice of Computer Science, number 8939 in LNCS, pages 566–577. Springer, 2015. [IPN+ 09] Luan Ibraimi, Milan Petkovic, Svetla Nikova, Pieter Hartel, and Willem Jonker. Ciphertext-policy attribute-based threshold decryption with flexible delegation and revocation of user attributes (extended version), April 2009. [LW11] Allison Lewko and Brent Waters. Decentralizing attribute-based encryption. In Advances in Cryptology–EUROCRYPT 2011, pages 568–588. Springer, 2011. [LZW+ 13] Yang Li, Jianming Zhu, Xiuli Wang, Yanmei Chai, and Shuai Shao. Optimized Ciphertext-Policy Attribute-Based Encryption with Efficient Revocation. International Journal of Security & Its Applications, 7(6), 2013. [OSW07] Rafail Ostrovsky, Amit Sahai, and Brent Waters. Attributebased encryption with non-monotonic access structures. In Proceedings of the 14th ACM conference on Computer and communications security, pages 195–203. ACM, 2007. [SW05] Amit Sahai and Brent Waters. Fuzzy identity-based encryption. In Advances in Cryptology–EUROCRYPT 2005, pages 457–473. Springer, 2005. [Wat11] Brent Waters. Ciphertext-policy attribute-based encryption: An expressive, efficient, and provably secure realization. In Public Key Cryptography–PKC 2011, pages 53–70. Springer, 2011. [WLWG11] Guojun Wang, Qin Liu, Jie Wu, and Minyi Guo. Hierarchical attribute-based encryption and scalable user revocation for sharing data in cloud servers. Computers & Security, 30(5):320–331, 2011. [YJRZ13] Kan Yang, Xiaohua Jia, Kui Ren, and Bo Zhang. DAC-MACS: Effective data access control for multi-authority cloud storage systems. In INFOCOM, 2013 Proceedings IEEE, pages 2895– 2903, 2013.
Optimális delegálóstratégia kialakítása peer-to-peer önkéntes számítási platformhoz Horváth Kristóf Attila
Telek Miklós
Budapesti M˝uszaki és Gazdaságtudományi Egyetem Hálózati Rendszerek és Szolgáltatások Tanszék E-mail:
[email protected]
Budapesti M˝uszaki és Gazdaságtudományi Egyetem Hálózati Rendszerek és Szolgáltatások Tanszék; MTA-BME Informatikai Rendszerek Kutatócsoport E-mail:
[email protected]
Kivonat—Az önkéntes számítási hálózatok kiváló lehet˝oséget biztosítanak hatalmas számítási igényu˝ tudományos projektek futtatására. Cikkünkben a jelenlegi központosított hálózatokkal szemben egy peer-to-peer (P2P) önkéntes számítási hálózat koncepcióját vázoljuk fel. A P2P számítási hálózatokban felmerül az igény a részfeladatok továbbküldésének szabályozására. Az optimális delegálóstratégia sztochasztikus analízis (phase-type modell) segítségével került kialakításra, az így meghatározott stratégiát szimulációs eredményekkel verifikáltuk. Kulcsszavak—önkéntes számítási hálózat, peer-to-peer, phase type, sztochasztikus analízis, szimuláció
I.
B EVEZETÉS
földönkívüli intelligens lények a háttérsugárzástól jól elkülöníthet˝o jeleket sugároznak. Mivel a kibocsájtott jel sávszélessége, szimbólumsebessége, Doppler-csúszása stb. mind-mind ismeretlen tényez˝o, a detektálás rendkívül számításigényes [3]. A SETI@home projekt népszer˝usége miatt 2002-ben megjelent a BOINC platform (Berkeley Open Infrastructure for Network Computing), mely azóta szinte egyeduralkodóvá vált. Projektjei világszerte 600 000 számítógépen futnak, teljes számítási kapacitása megközelíti a 10 petaFLOPS-ot. A SETI@home-on kívül számtalan más tudományos projekt fut a platformon, így többek között az Einstein@home, az LHC@home, illetve a Milkyway@home [4].
Hatalmas kihasználatlan számítási kapacitás rejlik a személyi számítógépekben, hiszen azok csak az id˝o töredék részében dolgoznak 100%-os kihasználtsággal. Az önkéntes számítási hálózatok ezt a fel nem használt számítási kapacitást próbálják meg hasznosítani. Az [1]-es tanulmány szerint 2006ban egy átlagos projekt 95,5 teraFLOPS (1012 Floating-point Operations Per Second) számítási kapacitással gazdálkodhatott – a tanulmány publikálása óta eltelt id˝o alatt ez az érték csak még tovább növekedett.
Bár a BOINC a legnépszer˝ubb, más platformok is születtek önkéntes számítási hálózatok üzemeltetésére. Az XtremWeb rendkívül hasonló a BOINC-hoz, azonban annál kötöttebb, a projektgazdának kevesebb szabadságot nyújtó megoldás [5], a két platform rivalizálásából a BOINC került ki gy˝oztesen. Az Alchemi egy .NET alapú platform, melyben a könny˝u programozhatóságot t˝uzték ki a fejleszt˝ok f˝o célként [6], [7]. Az OurGrid platform egyetemek és kutatócsoportok grid rendszereit köti össze és teszi lehet˝ové a szabad er˝oforrások kihasználását [8], [9].
A cikkben a jelenlegi központosított önkéntes számítási hálózatok áttekintése után (II. fejezet) a III. fejezetben egy elosztott módon m˝uköd˝o hálózat koncepcióját vázoljuk fel, majd a f˝o hangsúlyt a részfeladatok szétosztásához szükséges delegálóstratégia sztochasztikus analízis segítségével történ˝o optimalizációjára fektetjük (IV. fejezet). Végül az V. fejezetben bemutatjuk a meghatározott stratégia verifikálását szolgáló szimulációs eredményeket.
Mindegyik platform a gazdagép – távoli számítóegység paradigmáját követi, egy központi szerver dekomponálja a feladatokat részfeladatokká és menedzseli le a delegációt. A részfeladatok életciklusa az alábbi: 1) a szerver létrehoz egy részfeladatot, összecsomagolja a futtatható- és a bemeneti állományokat 2) a kliens letölti a részfeladatot 3) a kliens kiszámítja az eredményeket 4) a kliens feltölti az eredményeket 5) a szerver verifikálja és feldolgozza az eredményeket. III.
II.
L ÉTEZ O˝ ÖNKÉNTES SZÁMÍTÁSI HÁLÓZATOK
P EER - TO - PEER ÖNKÉNTES SZÁMÍTÁSI HÁLÓZAT KONCEPCIÓJA
Az els˝o önkéntes számítási projektek 1997-ben jelentek meg. A GIMPS (Great Internet Mersenne Prime Search) segítségével Mersenne-prímeket kerestek, míg a Distributed.net keretén belül kriptográfiai algoritmusok tesztelésére került sor [2]. 1999-ben indult a SETI@home projekt – ez volt az els˝o projekt, melyben már önkéntes felhasználók milliói vettek részt. A SETI (Search for Extraterrestrial Intelligence) földönkívüli intelligencia keresésére, míg az @home utótag az „otthoni”, felhasználók személyi számítógépein történ˝o adatfeldolgozásra utal. A kliensprogramok rendkívül keskenysávú jeleket keresnek a rádióteleszkópok által vett rádiójelekb˝ol kivágott szegmensekben – a kutatás azt feltételezi, hogy a
25
A létez˝o önkéntes számítási hálózatok két f˝obb problémával rendelkeznek. Egyrészt az önkéntes számítógépének védelme nem megoldott. A BOINC és XtremWeb rendszerekben a szerverek natív, gépi kódot küldenek a felhasználókhoz. A platformok aszimmetrikus kriptográfiai megoldásokat alkalmaznak az autentikációhoz és integritásvédelemhez, azonban a projektgazda bármilyen kódot futtathat az önkéntes számítógépén. Az Alchemi és OurGrid rendszerek virtualizációt alkalmaznak a probléma leküzdésére, ez azonban csökkenti a számítási teljesítményt, ami egy számítási hálózat esetén aggályos. Az általunk fejlesztett rendszerben forráskódok közlekednek a hálózatban, így a kártékony kódok könnyebben sz˝urhet˝ok,
mindemellett a fordítás/futtatás m˝uveletek szétválasztása hatékonyabb m˝uveletvégzést eredményezhet, mint a virtualizáció. A másik probléma – mely jelen cikk tárgya szempontjából nagyobb jelent˝oséggel bír –, hogy a részfeladatok menedzselése teljesen központosított az összes létez˝o önkéntes számítási hálózatban, mindegyik a gazdagép – távoli számítóegység paradigmáját követi. Bizonyos rendszerekben a futtatható- és egyéb bemeneti állományok peer-to-peer mechanizmusokkal juttathatók el az önkéntesek számítógépeihez [10], [11], azonban a központosított menedzsment itt is megfigyelhet˝o. A bemutatott önkéntes számítási hálózatban bármely számítógép továbbdelegálhat részfeladatokat más számítóegységek számára, ha az éppen soron következ˝o programrész párhuzamosan számítható blokkot tartalmaz. Ezt a megközelítést alkalmazva a programozó többszint˝u részfeladat-struktúrákat alakíthat ki, egy-egy részfeladat a f˝ofeladathoz hasonlóan további párhuzamos blokkokat tartalmazhat fraktálszer˝uen. Tekintettel arra, hogy a számítási hálózatban lév˝o elemek ezáltal egyenrangúvá válnak, egy homogén programozási modell alakítható ki szemben a párhuzamos programozásban gyakorta – így például a CUDA [12] vagy OpenCL [13] esetében is – alkalmazott heterogén modellel. A kód egymást követ˝oen soros- és párhuzamos blokkokat is tartalmazhat. A párhuzamos blokkoknak teljesen dekomponálhatónak kell lenniük, a részfeladatok nem kommunikálhatnak sem egymással, sem a f˝ofeladattal (a be- és kimeneti állományok cseréjét leszámítva). A soron következ˝o soros- vagy párhuzamos blokk futtatása az összes részfeladat eredményének rendelkezésre állása esetén folytatódhat. A párhuzamos blokkok el˝ott a kliensprogramnak el kell döntenie, hány részfeladatot számítson ki helyben, és hányat delegáljon. A delegált részfeladatok párhuzamosan számíthatók, azonban a delegálás m˝uvelete költséges, így létezik egy optimum a helyben számított és delegált részfeladatok száma között, melynél a futásid˝o minimális – ennek az optimumnak a meghatározására kerül sor a következ˝o fejezetben. IV.
O PTIMÁLIS DELEGÁLÓSTRATÉGIA KIALAKÍTÁSA
Az optimális delegálóstratégia meghatározása során egy phase-type jelleg˝u Markov-láncot alkalmaztunk, így a felállított modell ismertetése el˝ott a phase-type eloszlás elméleti hátterét mutatjuk be röviden. IV-A. Phase-type eloszlás A phase-type eloszlás diszkrét és folytonos idej˝u Markovlánc esetén is értelmezhet˝o – a cikk szempontjából a folytonos változat releváns, így csak ennek tulajdonságait fejtjük ki. 1. Definíció. Az n tranziens- és egy nyel˝o állapotot tartalmazó folytonos idej˝u Markov-lánc nyel˝o állapotba kerülésének ideje phase-type eloszlású. Az X phase-type eloszlású, nem negatív, folytonos valószín˝uségi változó eloszlásfüggvénye az alábbi: F (t) = P r(X ≤ t) = 1 − veHt 1 ,
26
ahol v kezd˝ovektor tartalmazza a Markov-lánc tranziens állapotainak kezdeti valószín˝uségeit, a H tranziens generátormátrix pedig a tranziens állapotok közötti állapotátmeneti intenzitásokat. Az 1 oszlopvektor minden eleme 1. A továbbiakban feltételezzük, hogy a Markov-lánc tranziens állapotból indul (v1 = 1), azaz X valószín˝uségi eloszlásfüggvénye nulla helyen zérus. Az X valószín˝uségi változó s˝ur˝uségfüggvénye és momentumai: f (t) = veHt (−H)1 ,
(1)
µn = E(X n ) = n!v(−H)−n 1 .
(2)
Amennyiben a kezd˝ovektor és a generátormátrix ismert, az összes X valószín˝uségi változóhoz kapcsolódó teljesítményjellemz˝o kiszámítható az (1) és (2) összefüggések alapján. IV-B. Futásid˝o modellezése Egy párhuzamos blokk futásideje az 1. ábrán látható Markov-lánccal modellezhet˝o. Az állapotok egy kétdimenziós hálóba rendezhet˝ok: vízszintesen növekszik a saját-, míg függ˝olegesen a delegált részfeladatok száma. μ1
00 μ2 10
21
31
12
μ2 μ1
2μ2 μ1
3μ2 μ1
03
μ2 μ1
2μ2 μ1
3μ2 30
11
μ1
02
μ2 μ1
2μ2 20
μ1
01
22
2μ2 μ1
3μ2 μ1
32
13
23 3μ2
μ1
33
1. ábra. Phase-type Markov-lánc a futásid˝o modellezéséhez A (0, 0) állapot reprezentálja a párhuzamos blokk számításának befejez˝odését, ezért modellünkben ez a nyel˝o állapot. Egy saját részfeladat kiszámítása µ1 paraméter˝u exponenciális eloszlás szerint, míg egy delegált részfeladat visszaérkezése (a távoli gépen történ˝o számítást és a hálózati kommunikációt is beleszámítva) µ2 paraméter˝u exponenciális eloszlás szerint történik. Minden állapotból (a fels˝o- és baloldalsó peremek állapotainak kivételével) két-két állapotátmenet lehetséges: 1) egy saját részfeladat kiszámítása befejez˝odik µ1 intenzitással, és a folyamat (i, j) állapotból (i, j − 1) állapotba lép, 2) a delegált részfeladatok egyike visszaérkezik iµ2 intenzitással, és a folyamat (i, j) állapotból (i − 1, j) állapotba lép. A peremeken nincs saját vagy delegált m˝uveletvégzés, így ott már csak az egyik átmenet jelenik meg. 1) Várható érték meghatározása: Az optimális delegációs stratégia meghatározása során elkerülhetetlen meghatározni a feladat futási idejének (egy párhuzamos blokk kiszámításához szükséges id˝onek) várható értékét. Ez a teljesítmény-jellemz˝o az 1. ábrán látható Markov-lánc nyel˝o állapotába, azaz a (0, 0) állapotba jutás idejének várható értéke. A mennyiség kiszámítható a (2) képlet alapján, azonban a H mátrix speciális tulajdonságait kihasználva egy hatékony, rekurzív képlet írható fel.
(3)
1 + E(Ti−1,j ) . µ1 + iµ2
µ1 iµ2 E(Tˆi,j ) + E(Tˇi,j ) µ1 + iµ2 µ1 + iµ2
k=1
ahol Hi =
Pi
1 k=1 k
30 20
20 10 0
deleg´ alt r´eszfeladatok (i)
0
saj´ at r´eszfeladatok (j)
2. ábra. Futásid˝ok különböz˝o állapotokból indulva
számítódik, míg a küszöbérték felett majdnem az összes további részfeladat delegálásra kerül. 30
25
Az els˝o oszlopban elhelyezked˝o állapotok esetén (j = 0, i > 0) az egymást követ˝o exponenciális fázisok nem azonos paraméter˝uek, így a különböz˝o paraméter˝u (kµ2 , k = i, i − 1, . . . , 1) eloszlások várható értékeit kell összegezni. i i X 1 1 X1 1 = = Hi , kµ2 µ2 k µ2
40
30
(5)
Az így kapott rekurzív formula minden i > 0 és j > 0 állapotra érvényes. Ha a folyamat a legfels˝o sor egy adott állapotából indul (i = 0, j > 0), a feladat futási idejének várható értéke Erlang(j, µ1 ) eloszlás szerinti (j darab µ1 paraméter˝u, független exponenciális eloszlás összege), melynek várható értéke: 1 E(T0,j ) = j . (6) µ1
E(Ti,0 ) =
0 40
(4)
A teljes id˝o meghatározásához az a (3) és a (4) formulákban meghatározott id˝oket az adott trajektória bekövetkezésének valószín˝uségével súlyozva kell összegezni. E(Ti,j ) =
0.5
10
Ha valamelyik delegált részfeladat érkezik vissza hamarabb, és a folyamat a második trajektórián halad tovább: E(Tˇi,j ) =
1
(7)
k=1
az i-edik harmonikus szám.
2) Optimalizálás: Az optimális delegálóstratégia meghatározásához az el˝oz˝o fejezetben bemutatott formula alapján kiszámítható a futásid˝ok várható értéke különböz˝o kezd˝oállapotokból indulva. A 2. ábra a futásid˝o várható értékét jeleníti meg a kezd˝oállapotok függvényében µ1 = 20 és µ2 = 4 esetén. A függvény csak egész értékeken értelmezett, a folytonos felület csak a szemléltetést szolgálja. Amikor a program futása egy párhuzamos blokkhoz ér, döntést kell hozni, hány részfeladat legyen delegálva és hány legyen helyben kiszámítva. E két szám határozza meg a Markov-lánc kezd˝oállapotát. Ha a párhuzamos blokk N részfeladatot tartalmaz, a kezd˝oállapot szükségszer˝uen kielégíti az i +j = N összefüggést, ennek megfelel˝oen az optimális futásid˝o a felület i+j = N síkmetszetén található N +1 darab pont minimuma, a minimumhely pedig meghatározza a delegált feladatok optimális számát. A 2. ábra az N = i + j = 8, 15, 23 metszeteket és az azokon elhelyezked˝o minimumokat jeleníti meg. A 3. ábra a delegált részfeladatok optimális számát mutatja az összes részfeladat számának függvényében. Egy küszöbértékig (a példában 10 részfeladat) minden részfeladat helyben
27
deleg´al´asok sz´ama
1 + E(Ti,j−1 ) . µ1 + iµ2
1.5
20
15
10
5
0 0
5
10
15
20
25
30
35
r´eszfeladatok sz´ama
3. ábra. Delegált részfeladatok optimális száma A 4. ábra a futásid˝o optimumát mutatja az összes részfeladat számának függvényében. A küszöbértékig 1/µ1 meredekség˝u lineáris szakasz figyelhet˝o meg, mely a (6) képlet alapján könnyen magyarázható. A küszöbérték felett a linearitás megtörik, amint a 3. ábra szerinti delegációk megjelennek. A (7) képlet szerint a delegált részfeladatok kiszámítása a harmonikus sorral áll összefüggésben. Az i-edik harmonikus Rn szám értéke közel ln(i), hiszen x1 dx = ln(n) a harmo1
nikus sor pedig az el˝obbi határozott integrál integrálközelít˝o összegeként fogható fel. A harmonikus sor és a logaritmus sorozat különbsége az Euler–Mascheroni állandóhoz tart: limn→∞ Hn − ln(n) = γ ≈ 0,5772156649, mely a logaritmussal történ˝o közelítés hibájának fels˝o korlátja. 1 0.9 0.8 0.7 0.6
fut´ asid˝ o
E(Tˆi,j ) =
2
fut´asid˝o
Ha a folyamat (i, j) állapotban tartózkodik (i > 0, j > 0), két állapot valamelyikébe léphet tovább. Mindkét eset bekövetkezésének valószín˝usége, illetve az átmenetig eltelt id˝o várható értéke is kiszámítható. A következ˝o állapotokból a nyel˝obe jutás idejének várható értékeit felhasználva felírható a rekurzív képlet. Ha egy saját részfeladat kiszámítása fejez˝odik be hamarabb és a folyamat az els˝o trajektórián halad tovább, az alábbi összefüggés adódik:
0.5 0.4 0.3 0.2 0.1 0 0
5
10
15
20
25
30
35
r´eszfeladatok sz´ama
4. ábra. Optimalizált futásid˝o
3) Modellparaméterek: A helyben számított részfeladatok futásidejének várható értéke a µ1 paraméter reciproka, így µ1 a számítógép m˝uveletvégz˝o képességének és a részfeladat elvégzéséhez szükséges számítások hányadosaként definiálható. A µ2 paraméter reciproka két érték összegeként határozható meg: a részfeladat elvégzéséhez szükséges számítások és a számítási hálózat átlagos m˝uveletvégz˝o képességének hányadosa (futásid˝o idegen gépen), valamint a ki- és bemeneti állományok átviteléhez szükséges id˝o várható értéke (delegáció többletköltsége).
45 40 35
fut´ asid˝ o (s)
30
S ZIMULÁCIÓ
A modellb˝ol adódó eredmények ellen˝orzésére egy C++ nyelv˝u programot fejlesztettünk, mely részletesen képes szimulálni az önkéntes számítási hálózatok számos folyamatát, így például a számítógépek közötti adatmozgatáshoz szükséges socketek kezelését, a feladatok végrehajtását a futtatókörnyezetben, különböz˝o delegáló stratégiák számítását és alkalmazását a több szintes feladatstruktúrákra stb. Az 5. ábra egy 10 részfeladatból álló feladat futási idejét mutatja a delegált részfeladatok számának függvényében. Az ábrán a futási id˝ok átlaga és a 95%-os konfidenciaintervallumok láthatók. A példában a részfeladatok elvégzéséhez 10 MFLO (Mega Floating-point Operations) szükséges, a számítógépek átlagosan 10 MFLOPS kapacitással rendelkeznek. A delegációhoz 3 MB adatot szükséges átvinni, a hálózati kommunikáció sebessége 2 MB/s.
10 5 0 0
[1]
[2] [3]
fut´asid˝o (s)
[6] 5
[7] 0 4
5
6
7
8
9
10
11
saj´ at r´eszfeladatok sz´ ama
[8]
5. ábra. Szimuláció eredménye 10 részfeladat esetén A 6. ábra egy másik példát mutat 20 részfeladattal. A grafikon az el˝oz˝o ábrához hasonlóan csak 10 saját részfeladatig ábrázolja az értékeket, innen végig lineáris növekedés figyelhet˝o meg. Ebben a példában a részfeladatok kiszámításához 40 MFLO szükséges, a többi paraméter változatlan. Az els˝o esetben a minimális id˝o 4 saját részfeladat kiszámításakor adódik, ekkor a futásid˝o 6,76. A második esetben az optimum 3 helyben számított részfeladatnál található (14,85). Mindkét eredmény megfelel a IV-B. fejezetben bemutatott sztochasztikus analízis eredményeinek. VI.
KONKLÚZIÓ
[9]
[10]
[11]
[12]
[13]
A cikk egy optimális delegálóstratégia kialakítását mutatja be peer-to-peer önkéntes számítási hálózatokhoz. A sztochasz-
28
4
5
6
7
8
9
10
11
H IVATKOZÁSOK
10
3
3
tikus analízis által meghatározott optimális stratégia egy szimulátor program segítségével verifikált. A modell nem tartalmaz bizonyos – a valóságos önkéntes számítási hálózatokban fellelhet˝o – folyamatokat, így például a számítógépek kikapcsolódását vagy elérhetetlenné válását, hibás eredmény miatti újraküldést stb. Ezen esetek modellezése kés˝obbi kutatások feladata.
[5]
2
2
6. ábra. Szimuláció eredménye 20 részfeladat esetén
[4]
1
1
saj´at r´eszfeladatok sz´ama
15
0
20 15
Az eddigiekben kifejtett modell és az imént meghatározott paraméterek még nem garantálják szükségszer˝uen a modellb˝ol adódó és a valódi hálózatban mérhet˝o futásid˝ok egyez˝oségét, ezért az eredmények verifikálásához egy szimulátort írtunk. V.
25
D. P. Anderson and G. Fedak, „The computational and storage potential of volunteer computing,” in Cluster Computing and the Grid, 2006. CCGRID 06. Sixth IEEE International Symposium on, vol. 1. IEEE, 2006, pp. 73–80. D. P. Anderson, „Public computing: Reconnecting people to science,” in Conference on Shared Knowledge and the Web, 2003, pp. 17–19. E. Korpela, D. Werthimer, D. P. Anderson, J. Cobb, and M. Lebofsky, „SETI@home – massively distributed computing for SETI,” Computing in science & engineering, vol. 3, no. 1, pp. 78–83, 2001. D. P. Anderson, „BOINC: a system for public-resource computing and storage,” in Fifth IEEE/ACM International Workshop on Grid Computing, Nov. 8 2004, pp. 4–10. G. Fedak, C. Germain, V. Neri, and F. Cappello, „Xtremweb: A generic global computing system,” in Cluster Computing and the Grid, 2001. Proceedings. First IEEE/ACM International Symposium on. IEEE, 2001, pp. 582–587. A. Luther, R. Buyya, R. Ranjan, and S. Venugopal, „Alchemi: A .NETbased grid computing framework and its integration into global grids,” arXiv preprint cs/0402017, 2004. ——, „Peer-to-peer grid computing and a .NET-based alchemi framework,” High Performance Computing: Paradigm and Infrastructure. Wiley Press, Fall, 2004. N. Andrade, W. Cirne, F. Brasileiro, and P. Roisenberg, „Ourgrid: An approach to easily assemble grids with equitable resource sharing,” in Job scheduling strategies for parallel processing. Springer, 2003, pp. 61–86. N. Andrade, L. Costa, G. Germóglio, and W. Cirne, „Peer-to-peer grid computing with the OurGrid community,” in Proceedings of the SBRC, 2005, pp. 1–8. G. Farkas, I. Szanto, V. Gora, and P. Haller, „Extending the BOINC architecture using peer-to-peer application code exchange,” in Roedunet International Conference (RoEduNet), 2011 10th. IEEE, 2011, pp. 1–4. F. Costa, L. Silva, G. Fedak, and I. Kelley, „Optimizing the data distribution layer of BOINC with BitTorrent,” in Parallel and Distributed Processing, 2008. IPDPS 2008. IEEE International Symposium on. IEEE, 2008, pp. 1–8. M. Garland, „Parallel computing with CUDA,” in Proc. of the IEEE Int. Symp. on Parallel and Distributed Processing (IPDPS), Atlanta, GA, Apr. 19–23 2010. J. E. Stone, D. Gohara, and G. Shi, „Opencl: A parallel programming standard for heterogeneous computing systems,” Computing in science & engineering, vol. 12, no. 3, p. 66, 2010.
Embedded Systems Security: Towards an Attack Taxonomy Dorottya Papp∗ , Zhendong Ma† , Levente Buttyan∗ ∗ CrySyS
Lab Budapest University of Technology and Economics, Hungary {dpapp, buttyan}@crysys.hu † Digital
Safety & Security Department AIT Austrian Institute of Technology, Austria
[email protected] Abstract—Embedded systems are the driving force for technological development in many domains such as automotive, healthcare, and industrial control in the emerging post-PC era. As more and more computational and networked devices are integrated into all aspects of our lives in a pervasive and “invisible” way, security becomes critical for the dependability of all smart or intelligent systems built upon these embedded systems. In this paper, we conduct a systematic review of the existing threats and vulnerabilities in embedded systems based on public available data. Moreover, based on the information, we derive an attack taxonomy for embedded systems and discuss the method on how to identify their implications in cyber-physical domains. We envision that the findings in this paper provides a valuable insight over the threat landscape of embedded systems for a better understanding and identification of security risks during system analysis and design.
What are the main causes of those successful attacks? What are the main vulnerabilities? In this paper, we conduct a systematic review of existing vulnerabilities by focusing on the published vulnerabilities specific to embedded systems. Based on the data, we derive an attack taxonomy to systematically identify and classify common attacks against embedded systems. We envision that the comprehensive knowledge of attacks and their implications will contribute to savvy design decisions for mission and safety critical systems. In the following, Sec. II discusses existing taxonomies and their shortcomings, Sec. III classifies attacks in a taxonomy specific to embedded systems, followed by the conclusion in Sec. IV.
I. I NTRODUCTION
II. R ELATED WORK
An embedded system is a computing system built into a larger system, designed for dedicated functions. It consists of a combination of hardware, software, and optionally mechanical parts. Thus the term refers to any computing systems other than general purpose PC or mainframe computers [1]. Security is an important issue because of the roles of embedded systems in many mission and safety-critical systems. Attacks on cyber systems are proved to cause physical damages [2]. However, comparing to conventional IT systems, security of embedded systems is no better due to poor security design and implementation and the difficulty of continuous patching [3]. Although many approaches have been proposed in the past to secure embedded systems [4], various facts make it very challenging to secure them [5], particularly for devices with remote control, maintenance and operation functions. Having a comprehensive view and understanding of an attacker’s capability, i.e. knowing the enemy, is prerequisite for security engineering of embedded systems. Security analysis, secure design and development must take into account the full spectrum of the threat landscape in order to identify security requirements, innovate and apply security controls with the boundary of constraints. As a result, in the scope of embedded systems security, the following questions arise:
In [6], the uniqueness of embedded systems security and possible countermeasures to software and hardware attacks are elaborated. Various attack scenarios are also discussed. Vulnerabilities in general computer and IT systems are studied in [7]. An empirical study focusing on embedded systems vulnerability is included in [8]. For attack taxonomy for general computer and IT systems, ENISA [9] maintains a list of existing incident taxonomies. Among them is the common language security incident taxonomy developed at the Sandia National Laboratories which divides an incident into attackers, tools, vulnerability, action, target, unauthorized results, and objective. [10] proposes a cyber attack taxonomy that classifies cyber attacks into attack vector, operational impact, defense, information impact, and target, abbreviated to AVOIDIT. Common Attack Pattern Enumeration and Classification (CAPEC) [11] defines structured description of IT security attacks. It organizes attack patterns into 11 categories, such as data leakage attacks, resource depletion, injection etc. Although in some cases, the previously mentioned taxonomies might be applicable to embedded devices in a networked environment, e.g. routers, most of the time they are not appropriate due to the unique characteristics of embedded systems.
• •
29
Most existing taxonomies do not fully cover the whole spectrum of embedded systems. For example, the taxonomy in [12] is created for SCADA systems and the one in [13] focuses on onboard aerospace systems. While the taxonomy in [14] is intended to capture cross-domain effects of cyber attacks, it is a generic and abstract classification of the semantics of attacks without concrete attack information. In addition, the lack of structure in the taxonomy makes it difficult to efficiently process attack information. To address these limitations, we extend the existing attack taxonomies and modify the contents and structures. III. A N ATTACK TAXONOMY FOR EMBEDDED SYSTEMS Now we identify the classification criteria to be used as the basis for deriving an attack taxonomy for embedded systems. For this purpose, we analyzed reported vulnerabilities related to embedded systems that we obtained from the public CVE database. Analyzing CVE entries was a major challenge in our work. First of all, the CVE database has more than 60,000 records, of which only a small part is relevant to embedded devices. Unfortunately, CVE records do not contain meta-information that would make it easy to identify which records are related to embedded systems. Therefore, we had to apply some heuristics to identify and extract the relevant subset. Specifically, we implemented a script that matched CVE records to a whitelist and a blacklist of keywords that we defined, and selected those entries whose textual description contains at least one word from our whitelist and did not contain any word from our blacklist. Our script identified 3826 relevant CVE records, which was still infeasible to read and analyze manually. As a next step, we randomly sampled the 3826 CVE records in such a way that we limited the number of records that relate to the same type of target mentioned at [15]. In this way, we obtained a sample set of 106 CVE records. Finally, we manually analyzed the sampled 106 CVE records and identified appropriate criteria based on which the vulnerabilities in the CVE records can be classified. Assuming that our selected sample set is representative, the identified classification criteria form the basis of a taxonomy of attacks against embedded devices. In order to check that indeed all 3826 CVE records can be categorized according to the criteria derived from the analysis based on the 106 samples, we later created a script that classifies all 3826 records according to our criteria in an automated way. Our script classified the majority of the records with no problem, and we were able to handle the few exceptions manually by refining our set of classification criteria. Based on existing attack taxonomies (cf. Sec. II) and the sampled CVE entries, we defined 5 dimensions along which attacks against embedded systems can be classified: (1) precondition, (2) vulnerability, (3) target, (4) attack method, and (5) effect of the attack. The precondition dimension contains possible conditions that are needed to be satisfied in order for the attacker to be able to carry out the attack. The vulnerability dimension contains different types of vulnerabilities that can
be exploited by the attacker. The target dimension contains possible attack targets by which we mean a specific layer of the system architecture or the embedded device as such if no specific layer can be identified as a target. The attack method dimension contains various exploitation techniques that the attacker can use. The effect dimension contains possible impacts of an attack. We populated the dimensions by going through the 106 selected CVE records and observing the preconditions and the type of the vulnerabilities described in the CVE records, as well as the targets, methods, and effects of the potential attacks that may exploit the described vulnerabilities. As for the preconditions, we observed the following types of requirements for the attacker. An Internet facing device is potentially exploitable by a remote attacker given that the device is available via the Internet and that the attacker can potentially discover the device and send messages to it.In case of local or remote access to the device, the attacker has to have some privileges that allow for logical access to the services or functions provided by the device. Often, the privileges required by the access are normal user privileges, and not administrator privileges. Direct physical access to the device requires the attacker to be able to access the device itself physically. In some cases, the physically proximity of the attacker is sufficient to conduct the attack. For instance, attacks on wireless devices may only require the attacker to be in the radio range of the target device. We observed a number of other preconditions (e.g. device has to run some software) in CVE records, each appearing in only one or a few records, and we decided to create the general category miscellaneous to represent them. Unfortunately, some CVE records and other sources do not provide sufficient amount of information to determine the preconditions of a potential attack; in those cases, we classify the precondition of the attack as unknown. The vulnerabilities that we observed in the CVE records have the following types. Many of the vulnerabilities in the selected CVE records stem from programming errors, which may lead to control flow attacks (e.g., input parsing vulnerabilities). Many embedded devices contain web based vulnerabilities because of a web based management interface through which they can be configured and updated. The web server applications running on those devices are typically rarely updated. Unfortunately, many devices use weak access control or authentication: the have default or weak passwords, and some devices have hard-coded passwords that provide backdoor access. Some devices use cryptographic mechanisms for authentication purposes or for preserving the confidentiality of some sensitive information. However, the improper use of cryptography often leads to fatal security failures. Embedded devices also suffer from insecure configuration such as enabled debug functionality in programs or unused but still open ports. The unknown category contains CVE records which did not contain information about the vulnerability itself, while they provided information for the other dimensions.
30
Regarding the target of the potential attacks, we distinguish the following layers of the embedded system architecture: hardware, firmware/OS, and application. When no specific layer can be determined from the CVE record, or when a potential attack can target multiple layers, we identify the device itself as the target of the attack. Note that we do not make a clear distinction between the firmware and the operating system (OS), because in many cases, embedded devices have no real OS, but their firmware provides the typical OS functionality (such as control to resources). In addition, we observed that the attacks may not target the embedded devices themselves, but the protocol used by those devices for communication or for management purposes. Subverting the goal of such a protocol is rather an attack on the protocol, and not on the devices that use the protocol. The attack methods that we observed in the selected CVE records are numerous. Control hijacking attacks divert the normal control flow of the programs running on the embedded device, which typically results in executing code injected by the attacker. Often, an attacker can obtain sensitive information (e.g., an access credential) by analyzing the software running on the embedded device. This process is called reverse engineering. An attacker can try to infect an embedded device with a malicious software (malware). There are different types of malware, but their common characteristic is that they all have some unwanted, potentially harmful functionality that they add to the infected system. In many CVEs, we observed injection of crafted packets or input as an attack method against protocols and programs used by embedded devices. While packet crafting is an active attack, eavesdropping (or sniffing) is a passive attack method whereby an attacker only observes the messages sent and received by an embedded device. Weak cryptography and weak authentication methods can be broken by brute force search attacks. Brute-force attacks are feasible only if the search space is sufficiently small. Unfortunately, we observed CVE records that report such vulnerabilities. It may appear strange to consider normal use as an attack method. What we mean here is the use of an unprotected mechanism or protocol in the intended way with the exception that it is used by the attacker and not a legitimate party. We added this attack method to our classification criteria, because we observed CVEs that reported on potential attacks where the attacker simply used some unprotected mechanism as if he was a legitimate user. For instance, the attacker can access files on an embedded device just like any other user if the device does not have any access control mechanism implemented on it. Finally, the unknown category contains CVEs that described vulnerabilities but did not identify any particular attack method that would exploit those identified vulnerabilities. The effect of the above attacks can be the following. Many CVE records identify potential attacks that lead to some denial-of-service condition such as malfunctioning or completely halting the embedded device. Code execution contains another large part of the analyzed CVE records in which the execution of attacker supplied code is identified on the embedded device as the effect of potential attacks.
This also includes web scripts and SQL injections, not only native code of the device. A commonly observable effect of potential attacks is the integrity violation of some data or code on the device. This includes modification of files and configuration settings, as well as the illegitimate update of the firmware or some applications on the device. In some cases, the attacker can obtain information that should not have been disclosed via an information leakage. Many attacks result in the attacker gaining illegitimate access to the device. This not only includes the cases when an attacker, who otherwise has no access to the device, manages to logically break into it, but also cases when the attacker has already some access, but he gains more privileges (i.e., privilege escalation). Certain attacks enable the attacker to cause financial loss to the victim e.g. by making calls from a smart phone. Actually, most attacks can lead to financial loss in a general sense, so we use this criterion to represent only those attacks whose primary goal is to cause financial loss. In some CVE records, we observed that the potential attack results in a degraded level of protection; lower than it is expected (i.e. a device is tricked into using weaker algorithms). In the category miscellaneous are attacks that cause users to be redirected to malicious websites or traffic to be redirected. In these cases, there is not enough information about what happens exactly to the redirected user or traffic, but there is information about the effect. The category unknown contains CVE records, no specific attack effect is identified. This is mainly the case when the attack method is not identified either, and the CVE record contains only information about a vulnerability. Now we will show how the taxonomy can be applied to CVE entries through an example. The description of CVE2006-2560 is as follows: Sitecom WL-153 router firmware before 1.38 allows remote attackers to bypass access restrictions and conduct unauthorized operations via a UPnP request with a modified InternalClient parameter, which is not validated, as demonstrated by using AddPortMapping to forward arbitrary traffic.
The description mentions a remote attacker without authentication, who has to be able to send packets to the Internet facing device. The description also states, that the exploitation is done via a modified parameter, which means that the attack method is Injecting crafted packets or input. The entry also tells us that the parameter is not validated by the firmware, so the vulnerability is a programming error. By exploiting this vulnerability, the attacker can conduct unauthorized operations, so the effect is illegitimate access. Figure 1 shows CVE entries categorized by our proposed taxonomy on a parallel coordinates diagram. Each path on the diagram is an attack scenario described by the vector, the categories the path touches in each dimension show a different aspect of the attack. The thicker a path is, the more CVE entries mention it as a possible scenario.
31
Fig. 1. Common Attack Scenarios
IV. C ONCLUSION This paper provides a comprehensive overview of embedded systems security by describing vulnerabilities. It enables us to create an attack taxonomy which we used to classify and describe common attack scenarios against embedded systems. The attack taxonomy derived in this paper provides information on what and how an embedded system can be attacked. Moreover, the structured knowledge can assist analysis and design of systems including or based on embedded devices during system development lifecycle. This taxonomy is developed within a large-scale research project addressing embedded systems security for safety- and mission-critical systems. Our next step will be to further validate the taxonomy in realistic settings through different use cases led by industry. Moreover, the taxonomy and the knowledge will be applied to security analysis of cyber-physical systems to identify and enumerate threats in a systematic way with reduced error and uncertainty. R EFERENCES [1] F. Vahid and T. Givargis, “Embedded system design: A unified hardware/software approach,” Department of Computer Science and Engineering University of California, 1999. [2] R. Langner, “Stuxnet: Dissecting a cyberwarfare weapon,” Security & Privacy, IEEE, vol. 9, no. 3, pp. 49–51, 2011. [3] B. Schneier, “Security risks of embedded systems,” https: //www.schneier.com/blog/archives/2014/01/security risks 9.html, January 2014. [4] S. Parameswaran and T. Wolf, “Embedded systems security - an overview,” Design Automation for Embedded Systems, vol. 12, no. 3, pp. 173–183, 2008. [5] D. N. Serpanos and A. G. Voyiatzis, “Security challenges in embedded systems,” ACM Transactions on Embedded Computing Systems (TECS), vol. 12, no. 1s, p. 66, 2013.
[6] P. Kocher, R. Lee, G. McGraw, A. Raghunathan, and S. ModeratorRavi, “Security as a new dimension in embedded system design,” in Proceedings of the 41st annual Design Automation Conference. ACM, 2004, pp. 753–760. [7] L. Bilge and T. Dumitras, “Before we knew it: an empirical study of zero-day attacks in the real world,” in Proceedings of the 2012 ACM conference on Computer and communications security. ACM, 2012, pp. 833–844. [8] A. Costin, J. Zaddach, A. Francillon, and D. Balzarotti, “A large-scale analysis of the security of embedded firmwares,” in Proceedings of the 23rd USENIX Security Symposium. San Diego, CA, USA: USENIX Association, 2014, pp. 95–110. [Online]. Available: https://www.usenix. org/system/files/conference/usenixsecurity14/sec14-paper-costin.pdf [9] European Union Agency for Network and Information Security (ENISA), “Existing indicent taxonomies,” https://www.enisa. europa.eu/activities/cert/support/incident-management/browsable/ incident-handling-process/incident-taxonomy/existing-taxonomies. [10] C. Simmons, C. Ellis, S. Shiva, D. Dasgupta, and Q. Wu, “Avoidit: A cyber attack taxonomy,” University of Memphis, Technical Report CS-09-003, 2009. [Online]. Available: http://si.lopesgazzani.com.br/ docentes/marcio/SegApp/CyberAttackTaxonomy IEEE Mag.pdf [11] T. L. Nielsen, J. Abildskov, P. M. Harper, I. Papaeconomou, and R. Gani, “The capec database,” Journal of Chemical & Engineering Data, vol. 46, no. 5, pp. 1041–1044, 2001. [12] B. Zhu, A. Joseph, and S. Sastry, “A taxonomy of cyber attacks on scada systems,” in Proceedings of the 2011 International Conference on Internet of Things and 4th International Conference on Cyber, Physical and Social Computing, ser. ITHINGSCPSCOM ’11. Washington, DC, USA: IEEE Computer Society, 2011, pp. 380–388. [Online]. Available: http://dx.doi.org/10.1109/iThings/CPSCom.2011.34 [13] A. Dessiatnikoff, Y. Deswarte, E. Alata, and V. Nicomette, “Potential attacks on onboard aerospace systems,” IEEE Security and Privacy, vol. 10, no. 4, pp. 71–74, Jul. 2012. [Online]. Available: http: //dx.doi.org/10.1109/MSP.2012.104 [14] M. Yampolskiy, P. Horvath, X. D. Koutsoukos, Y. Xue, and J. Sztipanovits, “Taxonomy for description of cross-domain attacks on cps,” in Proceedings of the 2Nd ACM International Conference on High Confidence Networked Systems, ser. HiCoNS ’13. New York, NY, USA: ACM, 2013, pp. 135–142. [Online]. Available: http://doi.acm.org/10.1145/2461446.2461465 [15] “CVE Details.” [Online]. Available: http://www.cvedetails.com/
32
NDN alapú szolgáltatás mediáció multihop Bluetooth Low Energy hálózatokban Balogh András, Imre Sándor, Szabó Sándor Hálózati Rendszerek és Szolgáltatások Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Budapest, Magyarország
[email protected], {imre, szabos}@hit.bme.hu fejlesztése igen komplex feladattá válik. Ugyan a publikációs jegyzékekben számos, a hagyományos technológiára kihegyezett scatternet routing megoldás (pl. [3] [4] [5]) is található, valamint egy BLE multihop megoldást is kifejlesztettek [6] az utóbbi években, ezek egyike sem alkalmazható hatékonyan a GATT üzenetek alagutazására a gyártóspecifikus BLE stackek kontextusában (pl. System-onChip megoldások, okostelefonok, stb.). Ennek legfőbb oka, hogy míg a hagyományos technológián alapuló megoldások alapvetései az LE esetében irrelevánsak, addig az említett BLE multihop GATT szolgáltatás az ATT és GATT rétegek újraimplementálását (duplikáció) igényli a hálózat összes csomópontján.
Abstract—A Bluetooth 4.1-es verziószámú specifikációjának megjelenésével a Bluetooth Low Energy adatkapcsolati rétegében bevezetésre került scatternet topológia támogatása. Jóllehet a multihop adatkapcsolatok így felépíthetők, az architektúra felsőbb rétegeiben a különböző, interoperabilitáshoz szükséges eljárásokat nem definiálták, így a GATT keretrendszerben (melyre a legtöbb jelenlegi BLE alkalmazás építkezik) nincs optimális mód ezen lehetőség kihasználására. Jelen dolgozatban, a Named Data Networking koncepció bizonyos elemeit felhasználva egy olyan szolgáltatás mediációs eljárás kerül bemutatásra, mely képes tisztán a GATT funkciók (pl. szolgáltatás felderítés, adatok lekérdezése, értesítések és jelzések beállítása) segítségével a probléma áthidalására. Mindemellett a megközelítés olyan új távlatokat nyit, melyben egy jól definiált és véges névtér esetében megvalósíthatóvá válik a hálózati elemek alkalmazási logikával való felvértezése az üzeneteket hordozó technológiától függetlenül.
Jelen dolgozatban egy olyan szolgáltatás mediációs eljárás kerül bemutatásra, mely képes a multihop BLE alkalmazások (pl. épület automatizálási rendszerek) fejlesztését könnyebbé tenni, valamint a kihasználható lehetőségek számát növelni anélkül, hogy indokolatlan funkcionalitásbeli overhead keletkezne.
Keywords—szolgáltatás mediáció, multihop, GATT, elosztott adatbázis, Bluetooth Low Energy, BLE, Smart, Named Data Networking
A dolgozat a következő fejezetekre tagózódik. A II. fejezetben az NDN alapú szolgáltatás mediáció metódusa kerül bemutatásra, míg a III. fejezetben a kísérleti implementáció, annak aktuális műszaki korlátai, valamint az eredmények kerülnek kifejtésre. A IV. fejezetben a továbblépési, valamint a koncepcionálisan új lehetőségek kerülnek számbavételre. Végezetül, az V. fejezetben a dolgozat konklúziója olvasható.
I. BEVEZETÉS A Bluetooth Low Energy (BLE) egy olyan vezeték nélküli adatátviteli technológia, mely részét képezi a Bluetooth specifikációnak és napjainkban gyakorlatilag minden fontosabb mobil platformon (Android, iOS, Windows Phone) elérhető. Annak egyszerűségéből és a relatíve alacsony energiaigényéből fakadóan szenzorokban, valamint az okos otthon eszközeiben is viszonylag könnyen alkalmazható. Emellett a dolgok internetjének (IoT) korához közeledve, a technológia kulcsszerepet játszik az IETF 6LoWPAN (IPv6 over Low power Wireless Personal Area Networks) koncepciójában [1] is.
II. NDN ALAPÚ SZOLGÁLTATÁS MEDIÁCIÓ A. Named Data Networking A Named Data Network (NDN, vagy Information Centric Network, avagy Content Centric Network) egy olyan Future Internet architektúra [7], mely a hangsúlyt nem az adatokat hordozó állomások nevére és a hálózatban elfoglalt helyére (pl. IP cím) hanem magukra az adatokra helyezi, melyeket egy alkalmas URI segítségével lehetséges elérni a hálózat tetszőleges pontjáról.
A 2013-as év végén a Bluetooth Special Interest Group (SIG) kiadta a v4.1-es specifikációt [2], mely kiterjesztette az addig támogatott csillag (piconet) topológiát a scatternet (több összekapcsolt piconet) lehetőségével. Bár ezen lépéssel megvalosíthatóvá vált a többes ugrásos adatátvitel a technológia adatkapcsolati rétegében, a felsőbb rétegek (L2CAP, ATT, GATT) egyikében sem definiálták az ezen funkcionalitáshoz szükséges interoperabilitási eljárásokat.
Ezen feladat megvalósításához az NDN mindösszesen két csomagot (Interest és Data), valamint egy alkalmas továbbítási stratégiát hasznosít. Az NDN csomópontok (pl. routerek) három fontosabb egységet tartalmaznak, nevezetesen a Content Store (CS), a Pending Interest Table (PIT), és a Forwarding Information Base (FIB) elemeket. A kliens az adott
A többes ugrásos GATT funkciók hiányában (pl. szolgáltatás felderítés, characteristic olvasás és írás, stb.) a multihop funkciókra építkező alkalmazások és eljárások
33
információhoz úgy juthat hozzá, hogy annak URI-ját egy Interest csomagba ágyazza, majd elkdüldi azt egy NDN csomópontnak. Az NDN node, ha a CS táblája tartalmazza a kívánt adatot, úgy rögvest válaszol egy Data csomagban elhelyezve azt. Amennyiben nem tárolja lokálisan a keresett adatot, úgy az adott Interest csomag továbbításra kerül FIB bejegyzések alapján, valamint az adott URI a PIT-be is följegyződik, amíg a megfelelő Data csomag meg nem érkezik. A Data csomag továbbítását követően, a FIB bejegyzések frissíthetők azon interfésszel, amelyen az beérkezett. Emellett tárolásra is kerülhet az adott információ a Content Store-ban.
Az Interest characteristic egy olyan írható és olvasható string, mely kijelöli azon eszközt, szolgáltatást és characteristic alstruktúrákat, melyeknek a nézetben meg kell jelennie. Az ehhez szükséges URI névtér a következő: Az eszközök (Location) mind a MAC címeikkel, mind a neveikkel azonosíthatók (amennyiben ezek egyediek), míg a /Location/Service/Characteristic
szolgáltatás (Service) és characteristic bejegyzések BLE specifikus UUID-k (Universally Unique IDentifiers) segítségével nevezhetők meg.
Jóllehet ez egy igen egyszerű továbbítási stratégia, annak jellegét jól példázza, hiszen láthatóan a folyamat nagy hasonlóságot mutat egy olyan elosztott adatbázisban való kereséssel, mely számos CS elemet foglal magában. Ezen felül azon, IP-alapú hálózatokhoz képesti lényeges különbségre is rámutat, hogy az Interest és kapcsolódó Data csomagok ugyanazon az útvonalon közlekednek.
A Nonce deszkriptor egy 32 bites pszeudorandom integer, melynek az Interest hurkok elkerülését teszi lehetővé (hasonlóan az NDN architektúrában definiáltakhoz). Amennyiben az Interest characteristic és a Nonce deszkriptor írásra került, a mediátor eszközfelderítésbe és azt követő GATT felderítésekbe kezd, emellett továbbítja a környező mediátorok irányába a kérést (Interest és Nonce), függően a keresendő tartalomtól. Fontos megjegyezni, hogy nem szükséges minden egyes határolókarakter között bármit is megadni, s így egy minden fellelhető elemre kiterjedő felderítés a “///” Interest stringgel könnyedén megvalósítható.
B. Elosztott GATT adatbázisok A Bluetooth Low Energy technológiában a GATT szolgáltatások, characteristic-ek, és deszkriptorok (Attribute-ok) úgy is értelmezhetők, mint olyan adatbázis bejegyzések, melyek különböző tulajdonságokkal (pl. írható, vagy olvasható), értelmezéssel (pl. hőmérséklet, vagy szöveg), és képességekkel (pl. jelzések, broadcast) rendelkezhetnek. Ennél fogva ezen GATT adatbázisok megfeleltethetők a CS egységekkel az NDN architektúrában. Ugyanakkor az NDN jelen állás szerint nem támogatja a CS tartalmak távolról való módosítását, s így a teljes funkcionalitáshoz egy általánosabb modell szükséges. A Mediator/Wrapper architektúra ugyanakkor egy széles körben elterjedt módszer a heterogén adatbázisok elosztott módon való összekapcsolásához és kezeléséhez [8]. Tekintettel arra, hogy a GATT adatbázisok jól specifikált formátummal rendelkeznek a Wrapper funkcionalitásra jelen esetben nincs szükség. Ennek eredményeképpen csak olyan mediátor egységek alkalmazása szükséges, melyek képesek a mediációs hierarchia legfelső szintjén az elosztott GATT adatbázis elemeinek aktuális állapotát tükröző nézeteket kialakítani egy Bluetooth LE scatternet egészében. Ezen funkcionalitás hatékony megvalósításához szükség van egy Szolgáltatás Mediációs GATT Szolgáltatásra (SMS), melynek működése a következő pontban kerül kifejtésre.
1. ábra – Közvetített GATT struktúrák
Amennyiben az adott characteristic bejegyzést egy mediátor megtalálja, regisztrálja azt a bennfoglaló szolgáltatással és a kapcsolódó deszkriptorokkal, valamint tulajdonságokkal együtt a Service Mediation Service kontextusába, másodlagos (secondary) szolgáltatásként (1. ábra). Ezen felül egy NDN deszkriptor is hozzácsatolódik az adott characteristic-hez, mely a megtalált struktúra forrását (Location) jelzi.
C. Szolgáltatás Mediációs Szolgáltatás A definiált GATT szolgáltatás a következő struktúrával rendelkezik. Service Mediation Service { Mediation Interest Characteristic (read, write) Nonce Descriptor (read, write) Mediation Signal Characteristic (read, indication) Client Char. Conf. Descriptor (read, write) Mediated Service 1 Mediated Characteristic 1 … NDN Descriptor (read) … … }
A memóriaigény csökkentése és az átláthatóság végett, a characteristic bejegyzések aggregálódnak, azaz nincsenek ismétlődő másodlagos szolgáltatás bejegyzések. A Mediációs folyamat regisztráció) a mediátorok
34
végeztével (felderítés és a Signaling characteristic
segítségével jelzik a folyamat eredményességét (pl. sikeres, nem található, hiba) a felsőbb hierarchiaszintek irányába.
látták el, míg a mediálandó GATT szolgáltatásokat 2 db saját fejlesztésű, valamint 2 db Texas Instruments gyártmányú kulcstartó (keyfob) eszköz (CC2540 Mini Development kit) hordozta. A mediációs folyamatot és az elosztott GATT adatbázissal történő interakciókat (User) egy szintén Nordic Semiconductos gyártmányú USB modullal, valamint a MasterControlPanel (v3.6.0) alkalmazás segítségével kezdeményeztük.
2. ábra – Mediációs hierarchia
Mindebből fakadóan, ha minden egyes mediátor végzett a folyamattal, a specifikált nézet kialakul a legfelsőbb hierarchiaszinten (2. ábra), melyet a folyamatot kezdeményező (User) eszköztől éppen egy ugrásra található mediátorok alkotnak. Megjegyzendő, hogy ezen szintek (vastag vonal) a nézetek függvényében nem, csak az egyes characteric bejegyzések szempontjából tekinthetők egyértelműnek (melyet az ábra is szemléltet), azaz egyetlen mediátor egyidejűleg lehet a mediációs hirerchia több szintjén is.
3. ábra – Kísérleti topológia
A tesztelési folyamat célja a szolgáltatás mediáció koncepciójának gyakorlatban való reprodukálhatóságának vizsgálata volt, melyet különböző Interest sztringek összeállításával, majd a kialakult nézetek ellenőrzésével és a különböző akciók végrehajtásával végeztünk el. A verifikáció végeredményében sikeresen zárult, a különböző akciókat és a mediációs folyamatot indokolatlanul magas késleltetés nem terhelte és a rendszer képes volt memóra kapacitásának megfelelő mértékben a funkciókat végrehajtani. Megjegyzendő ugyanakkor, hogy az 1 mp-nél kisebb periodicitással érkező notification események továbbítására a rendszer gyakorlatilag nem volt képes, mely feltehetően a stack ütemezőjének és/vagy az eseménykezelő rutin tökéletlenségeire vezethető vissza.
A nézet kialakítását követően lehetőség nyílik a bejegyzésekkel való interakcióra (pl. olvasás, írás, jelzés), melyet a rendszer az NDN deszkriptorok, és a FIB bejegyzések (lokális és távoli handle relációk, melyek a mediációs folyamat során keletkeznek) segítségével, valamint a különböző akciók (kérések és válaszok) átjátszásával valósít meg, mely magában foglalja a bejegyzések minden hierarchiaszinten való frissülését is.
Minthogy az S130 stack kezdetleges volta miatt a szélesebb körű (késleltetés, memóriaigény, fogyasztás, stb.) elemzés kimenetele csak partikulárisan, az aktuális stack implementáció korlátaira lett volna visszavezethető (emellett az eredményeket az elméleti multihop BLE modell hiányában csak abszolút módon lehetett volna értelmezni), az ilyen jellegű analízisre jelen dolgozat keretein belül nem kerül sor.
Jelen megközelítésben, ha egy kapcsolat szétesik, úgy az azon a linken keresztül kapcsolódó részfa is lebontásra kerül, valamint a mediált bejegyzések is törlődnek az ott található GATT adatbázisokból. Megjegyzendő ugyanakkor, hogy ennek kezelése történhet szofisztikáltabb módon is, az adott alkalmazás függvényében.
B. Korlátok és kompromisszumok Bár a tipikus BLE alkalmazások esetében a viszonylag kis memóriaméret (pl. 8-16 kB beágyazott rendszerek esetén) elegendőnek tekinthető, a mediációs hierarchia magasabb szintjein, ahogy növekszik a közvetítendő struktúrák száma, egyre nehezebben skálázódik a megoldás. Ezen felül a különböző stack implementációk előredefiniált struktúrái is képesek információ redundanciát okozni, ami összességében csökkenti a memória-hatékonyságot, s nagy mértékben korlátozza mediációs hierarchia kiterjedését.
III. IMPLEMENTÁCIÓ A. Kísérleti rendszer és verifikáció A koncepció gyakorlatba való átültetéséhez egy olyan BLE stack volt szükséges, mely együttesen támogatja a GAP Peripheral és Central szerepeket, valamint a GATT kliens és szerver specifikus funkciókat. Aktuálisan erre a célra a legmegfelelőbb választásnak a Nordic Semiconductors által fejlesztett S130-as stack bizonyult [9], mely az kísérleti megvalósítás idején alfa fázisban volt. Ebből fakadóan csak három Peripheral egységre volt lehetséges kapcsolódni Centralként, valamint Peripheralként csak egyetlen kapcsolatot lehetett fenntartani egy Central eszközzel. A 3. ábra a kísérlet során kialakított topológiát mutatja.
Mindezen felül jól ismert optimalizációs kényszer lép fel a késleltetés és az energiahatékonyság között is, hiszen a mediációs folyamat és az interakciók átjátszásának időbeni lefutását lényegében az eszközfelderítés [10] és a throughput [11] határozza meg. Érdemes ezen felül figyelembe venni, hogy a mediációs hierarchia legalsóbb szintjén a Peripheral
A fejlesztés során a mediátorok szerepeit a Nordic Semiconductors által fejlesztési célzattal gyártott boardok
35
eszközök felülbírálhatják a kapcsolati paramétereket, ami szűk keresztmetszethez vezethet.
0x2201 UUID egy kórházi lázmérő hőmérséklet paramétere, a 0x2301 pedig egy nővérszoba jelzőlámpájának kapcsolója, úgy gyakorlatilag egy egyszerűbb kórházi riasztórendszer funkcióira “taníthatunk” meg egy multihop BLE hálózatot. Tehetjük mindezt anélkül, hogy ismernénk a topológiát, vagy azokat eszközöket melyek a mediációt végzik, hiszen egy BLE technológia segítségével kapcsolható villanykörte is rendelkezhet mediációs képességekkel anélkül, hogy az eredeti funkcionalitás csorbulna.
IV. TOVÁBBLÉPÉSI LEHETŐSÉGEK A. A továbbfejlesztés irányvonalai Jóllehet a verifikáció összességében pozitívan zárult, számos kérdés nyitott maradt. Az első ilyen az end-to-end hitelesítés és autentikáció kérdésköre, melyet a jövőben kiemelten fontos körüljárni, hiszen a Bluetooth specifikáció ezen funkciók definícióját is nélkülözi.
V. KONKLÚZIÓ A dolgozatban közreadottak alapján kijelenthető, hogy a szolgáltatás mediáció képes a bevezetőben taglalt problémák áthidalasára. Mindamellett, hogy a megoldás kielégíti az általános alkalmazhatóság feltételeit, tetszőleges GATT szolgáltatás mellett megfér és visszirányban kompatibilis bármely eddigi Bluetooth Low Energy készülékkel. Ezen felül a koncepció teljesen új irányokat is megnyit, melyek ugyan számos kíhívást foglalnak magukban az elérhető eredmények fényében azok további vizsgálata mindenképpen indokolt.
A következő ilyen problémakör az ugrások maximális száma, a késleltetés, a GATT struktúrák kezelésének és az Interestek továbbítási stratégiájának (pl. mobilitás támogatása) kérdései, melyekre a megfelelő modellek hiányában szintén nem került sor. A további kutatások ezen kérdések vizsgálatát mindenképpen magukba kell foglalják, hiszen ezek megválaszolása jelenti kulcsot a Quaity of Service megfontolások SMS-ben való foganatosításához.
KÖSZÖNETNYILVÁNÍTÁS
B. Intelligens Bluetooth LE hálózatok Jelen kutatás ezen felül egy egészen új irányt is megnyitott, mely elvezethet az intelligens, tanítható és teljesen önműködő BLE hálózatokig. Az első lépés ebbe az irányba a feltételvizsgálatok és reguláris kifejezések bevezetése az Interestek szintaxisába. Minthogy maguk az characteristic értékek minden egyes mediátor számára ugyanúgy látszanak, mint a kezdeményező felhasználó számára, erre minden további nélkül adott a lehetőség. A “///(0x2A19 < 10)” Interest sztring például csak olyan elemállapotokat venne figyelembe a mediáció során, melyek értéke alacsonyabb, mint 10%, csökkentvén ezzel mind az alkalmazások komplexitását, s növelve a memória-hatékonyságot.
Jelen kutatást a BME-Infokom Innovátor Non-Profit kft., http://www.bme-infokom.hu/ szponzorálta. HIVATKOZÁSOK [1]
Transmission of IPv6 Packets over BLUETOOTH(R) Low Energy, IETF Draft, Jan. 2015. [2] Bluetooth SIG, “Bluetooth Core Specification v4.1”, Dec. 2013. [3] Wen-Zhan Song and Xiang-Yang Li, “Hierarchical self-routing scatternet for multihop bluetooth networks,” 3rd IEEE Consumer Communications and Networking Conf., 2006. CCNC 2006., vol. 1, pp. 86-90, Jan. 2006. [4] Ting-Yu Lin et al., “Formation, routing, and maintenance protocols for the BlueRing scatternet of Bluetooths,” 2003. Proc. of the 36th Annu. Hawaii Int. Conf. on System Sciences, Jan. 2003. [5] Chih-Yung Chang, Sahoo P.K., and S. Lee, “LARP: a novel routing protocol for the Bluetooth scatternet,” Second IFIP Int. Conf. on Wireless and Optical Communications Networks, 2005. WOCN 2005, pp. 56-60, March, 2005. [6] Mikhaylov, K. and Tervonen, J., “Multihop data transfer service for Bluetooth Low Energy,” 2013 13th Int. Conf. on ITS Telecommunications (ITST), pp. 319-324., Nov. 2013. [7] Van Jacobson, Diana K. Smetters, James D. Thornton, Michael F. Plass, Nicholas H. Briggs, Rebecca L. Braynard, “Networking named content”, CoNEXT '09 Proc. of the 5th int.conf. on Emerging networking experiments and technologies, pp. 1-12., 2009. [8] Özsu M. Tamer, Valduriez Patrick, Principles of Distributed Database Systems (3rd Edition), Springer, 2011. [9] Nordic Semiconductors, “S130 Softdevice”(version 0.5.0-1alpha), June 2014. [10] Jia Liu, Canfeng Chen, Yan Ma, Ying Xu, “Energy Analysis of Device Discovery for Bluetooth Low Energy”, 2013 IEEE 78th Vehicular Technology Conf.(VTC Fall), Las Vegas, NV, USA, pp. 1-5., Sept. 2013. [11] Gomez C., Demirkol I., Paradells J., “Modeling the Maximum Throughput of Bluetooth Low Energy in an Error-Prone Link”, Communications Letters, IEEE, vol. 15, no. 11., pp. 1187-1189., Nov. 2011.
A következő lépés az intelligencia irányába az értékadás lehetőségének bevezetése a szintaxisba, mely az előbbi esettel teljesen analóg módon értelmezhető. Követve ezen gondolatmenetet az Interestek akár egyszerűbb szkripteket is magukban foglalhatnak, melyeket a mediátorok képesek végrehajtani: { a=”///(0x2201 > 41)?”; /[22 | 23 | 24]//(0x2301=(a ? 1 : 0)); }
A szkript végrehajtása az első kifejezéssel kiértékelésével kezdődik (“a=...”), melynek végeredménye egy olyan handle, mely teljesíti a megadott feltételt. Ez egy előzetes mediációs folyamatot foglal magában, ahol csak a “///(...)?” rész kerül továbbításra. A mediációs folyamat végeztével a következő sor kiértékelése következik, mely felhasználja az előbb kapott handle-t, mint referenciát. Amennyiben a hivatkozott érték teljesíti a feltételt, úgy egy másik mediációs folyamat indul el, mely a felsorolt lokációk egyikében a megadott characteristicnek “1”-es értéket ad. Amennyiben lehetővé tesszük, hogy ezen utasítássorozat periodikusan végrehajtásra kerüljön és feltételezzük, hogy a
36
A Virtual Testbed for Analysis and Design of Advanced Network-Based Mobility Extensions Ákos Leiter (student)
László Bokor (supervisor)
Budapest University of Technology and Economics (BME) Department of Networked Systems and Services (HIT) Multimedia Networks and Services Laboratory Magyar Tudósok krt. 2, H-1117, Budapest, Hungary
[email protected]
Budapest University of Technology and Economics (BME) Department of Networked Systems and Services (HIT) Multimedia Networks and Services Laboratory Magyar Tudósok krt. 2, H-1117, Budapest, Hungary
[email protected]
user point of view regarding Quality of Service and Experience.
Abstract— The volume of mobile broadband traffic is continuously increasing nowadays which requires new approaches by network operators. Many of the possible solutions apply traffic offloading techniques. In parallel, IP based mobility systems come up to unite all the access techniques into one huge ecosystem, including 3GPP and non-3GPP networks (e.g., Wi-Fi). In our previous work we proposed an architecture for flow-based and operator-centric dynamic mobility management based on Proxy Mobile IPv6. The given system ensures a centralized view of mobility handing along PCRF and ANDSF entities. In this paper we suggest a virtual testbed for functional analysis and performance evaluation. There are several useful open source software components which can emulate the previously introduced functionalities in order to create an approximate picture about the system behavior.
Flow-based concepts come upon when the way of optimization is not only based on interface selection for all the traffic of the UE but when the decision is more fine-grained by going into the level of communication flows. Each IP flow may require different Quality of Service (QoS) and have distinct demand of connection continuity. On the other hand many flows are intolerant of being relocated to other interface because of IP address perseverance issues (i.e., VPN is sensitive for both IP address changing and connection outage despite web browsing where only a refresh may be required). Dynamic mobility management introduces a new on-demand method when the question is whether a flow needs to be involved in mobility handling or not. At this case mobility management could mean ensuring IP address preservation or choosing the geographically closest gateway for UE.
Keywords: testbed design, virtual environment, network-based mobility extensions, flow mobility, dynamic mobility management, traffic offloading, PMIPv6, PCRF, ANDSF
I.
The reminder of the paper is organized as follows. In Section II we present the background of network-based mobility solutions and extensions focusing on our previous work proposing an operator-centric dynamic mobility management scheme. In Section III we describe the design considerations of a testbed aiming to ensure a virtual environment for extensive analysis of network-based mobility techniques. Section IV presents the details of the proposed virtual testbed and highlights the basic tools developed for potential measurements. In Section V we conclude the paper and draw future work.
INTRODUCTION
As nowadays User Equipments (UEs) usually have more than one interfaces, new questions regarding optimal, parallel usage of available radio networks come upon. Many papers focus on algorithms to choose the best interface based on the actual IP flow and environment characteristics [9][10][11][12]. There are several approaches to decide whether the UE or rather the network should initialize such handovers. Mobile IPv6 (MIPv6) [1] is a UE based mobility management protocol where UEs takes the active part in mobility handling. Proxy Mobile IPv6 (PMIPv6) [2] acts as a network based mobility management protocol where UE does not even know whether it is involved in any mobility management or not.
II.
BACKGROUND
IETF Netext Working Group is one of the main drivers of network-based mobility management in the IP domain. They introduced a flow-based concept for PMIPv6 [13] where new control messages and database structure take place and require interactive contribution from UE side.
The main advantage of network based mobility management protocols is that the UE is not required for any modification in order to be involved. The decision logic takes place at the network side and can access the whole picture of network and it is able to optimize the network selection process regarding the actual state of traffic, users, network utilization etc. However it also requires full control of network management on UE side by the operator, it is worth examining whether this cost produces an acceptable deal from the end-
In our previous work [6] we proposed an architecture that copes with a new way of using PMIPv6 in Evolved Packet Core (EPC). In this scenario the Policy and Charging Rules Function - Policy and Charging Enforcement Function (PCRFPCEF) and Access Network Discovery and Selection Function (ANDSF) are the key enablers of dynamic, network-based (i.e.,
37
operator centric) mobility management (Fig. 1) and the Mobility Management Entity (MME) informs the PCRF whether and which UEs take place in the queried area. The architecture suggests that there should be many new interfaces between the existing nodes:
proposed signaling packet flow designed to control and manage such situations. OAM
PCRF
MME
ANDSF
UE
Offload trigger Location Discover Request Location Discover Response Processing LDR
PCRF-O&M: receiving offloading triggers PCRF-MME: getting the UEs in a specific location PCRF-ANDSF: communication with UEs PCRF-LMA: enabling and controlling a UE attachment to the PMIPv6 domain
Current Flow Request
Flow Discover Request Flow Discover Response
Current Flow Response Processing CFR
Mobility Update Request Handover Discover Request Handover Discover Response Processing HDR Mobilty Update Accept
Mobility Policy Update PBR Update PBR Update Succes
Mobility Policy Accept
Figure 1 – Architecture for flow based, operator-centric mobility management in EPC with PMIPv6
Figure 2 – Proposed Control Packet Flow
PCRF is the node which has per-user view of policies and PCEF is the enforcer of these rules. PCRF needs an entity which can push the current Policy Based Routing (PBR) rules to UEs which are calculated by the actual state and requirements of the network and data flows. ANDSF with its S14 interface is supposed to be a suitable solution to do so.
On Fig. 3, the proposed attachment procedure is depicted with the novel LMA-PCRF communication. This mechanism could be continued by initializing Current Flow Request and if necessary immediate offloading can be performed (the procedure ends with PBA and the UE receives its HoA with Router Advertisment).
Basically PCRF acts as an enabler of which flow is allowed to bind to the new Mobile Access Gateway (MAG, the mobility manager gateway of PMIP).LMAs (Local Mobility Anchor) need only relatively small modifications as they are extended with one proposed new signal flow. MAGs remain unmodified because in a worst case scenario they do not get answer for the sent Proxy Binding Update (PBU)
UE
MAG
PGW-LMA
PCRF
Router Solicitation Router Advertisment with CoA
ANDSF also needs a new interface in order to communicate with PCRF. ANDSF’s new role is to request mobility related measurements on UEs and analyze whether a handover can be performed from radio performance point of view. On the other hand ANDSF is responsible to send its Managed Object Tree (MO) with the PBR rules (calculated by PCRF) to UEs.
Proxy Binding Update
Flow Update Request
3. Figure – Initial phase of new attachment to the PMIPv6 domain extended with PCRF
The above introduced extension is only an example of the existing and possible network-based mobility enhancements. In this paper we present the design considerations and preliminary experiences of a virtual testbed environment for network-based mobility management, consisting of several open source software components in order to evaluate advanced mobility solutions in the all IP 3GPP domain.
We suggest that O&M should be considered as a black box having one (new) interface with the PCRF. Network initialized handovers also can be executed depending on the current state of the whole network (e.g., suddenly lots of UE appear at specific area and due to the overload of Radio Access Network, some flows or the entire traffic of UEs can be redirected to a Wi-Fi network for offloading purposes). Fig. 2 introduces the
38
III.
interface can be shut down entirely regardless of the current state of the interface in the OS.
DESIGN CONSIDERATIONS
A.
Main assumptions In order to clarify test cases for verification, functional and performance evaluation of network-based mobility management schemes in this section we introduce the basic set of required scenarios. The goal is to get an overall picture about the behavior of end-to-end IP level connections in PMIPv6-based mobility extensions with emulated EPC network elements during handovers. On the other hand we would like to measure how many handovers can be performed without service degradation. As we assume that UE has at least two interfaces with different access types, we specify three types of access networks:
OAI PMIPv6 implementation is applicable for testing even advanced flow mobility extensions because it does not recognize whether PBUs come from the same UE or not. With the help of a PBR on the UE regarding the type of L4 protocol we can specify the interface where the packet needs to be sent out. The flow offloading test concept assumes that Wi-Fi and LTE have overlapping coverages while flow-based handovers are performed. In those cases where the new attachment of UE needs to be tested, the Wi-Fi interface can be shut down and turned back on thus a Router Solicitation (RS) message can initiate the attachment procedure.
LTE Wi-Fi Ethernet (for referential point) For simplicity we spared the very detailed implementation of the above mentioned wireless connections and we just emulate their usual latency, jitter etc. using the WANulator network emulator solution [3]. Channel parameter values for emulating the radio link of LTE and Wi-Fi networks are detailed in [4] and can be enforced by the WANulator. Reflected the goals of tests iPerf [15] and D-ITG [16] will be used as traffic generators. Server parts of the mentioned synthetic traffic injectors take place at Correspondent Node (CN) intended as the destination of end-to-end measurement and introduced at MIPv6 RFC [1]. B.
Building blocks Our testbed proposal uses Vmware ESXi but also KVM or other virtualization environment could be applied for running the virtual machines which are associated with different LTE/EPC network elements. Furthermore a proper PMIPv6 implementation is needed. Eurecom has an open solution as Open Air Interface (OAI) PMIPv6 [7]. This implementation is collocated with a FreeRadius server in order to enable and efficiently support authentication. By default this radius service is relied on UE MAC addresses.
Figure 4 – The proposed virtual testbed as an overlay network
PCRF-PCEF functionalities are implemented using the open solution by University of Cape Town [17]. IV.
In the central of the proposed architecture (Figure 4), the “Management Node” takes place. The main task of it is to emulate the context of inter-technology handovers. There are several basic scripts in the literature (e.g., [5]) which helped us to develop controller software executing network changes (i.e., connect a VM’s vNIC to another vSwitch, update Portgroup). Other task of the “Management Node” is to create PBR rules and transport them to UEs. In practice Netfilter kernel module is used with Ip6tables to set up Mangle table rules for identifying and directing flows to the right routing table where default routes are configured according to the destination interface of the packets. This is the scheme we propose for emulating control packets between UE and ANDSF at S14 interface. Of course these rules can be transported in several ways (i.e., Expect scripts). As an orchestration script is needed
THE PROPOSED VIRTUAL TESTBED DESIGN
A. Testbed design We verified and built the test environment with the help of Vmware ESXi managed virtual machines where Ubuntu 12.04 Linux operating systems were running with Linux Kernel 3.16.3 UE systems have at least two interfaces for emulating multi-access behavior. Vmware has a Perl-based Application Programming Interface (API) for maintenance, through this we can automate network selection as switching between Portgroups or an
39
ip -6 rule del pri 100 fi echo "Setting UDP for Wifi..." ip -6 rule add pri 100 fwmark 100 table table_wifi
for synchronizing handovers and PBR updates, Bash was our choice to do so. “PS Core” node represents a 3GPP network (the packet transmission path from eNodeB to SGW), while the “MAG” acts as a non-3GPP access network (from a Wi-Fi access point, furthermore optionally through Wireless Controllers, etc.). PCRF/ PCEF/LMA (PGW)
ANDSF
SGi
} ssh mn "$(typeset -f); set_udp_for_wifi"
V.
This paper is a short and high-level summary of our proposed virtual testbed environment designed to support development and evaluation of network-based mobility management optimization techniques. We are on the verge of having completed all the calibration measurements and preliminary test, thus the analysis of our PMIPv6 extension in this emulated EPC environment can be started soon. Results are expected to be used for enhancing existing methods and develop new ones in order to give novel solutions for managing inter-technology handover in future mobile networks.
CN
S14
S2a
ANDSF-PCRF
IP core
PS core
REFERENCES
MAG [1] [2]
Wi-Fi AP
eNodeB
CONCLUSIONS
[3] [4]
MN Figure 5 – Logical view of the proposed testbed
[5]
WANulators (“W1” and “W2” in Fig. 4) are separate VMs which take place between the MAGs and UE in order to be involved in packet forwarding and enforcing the required quality indicators.
[6]
As at the proposed logical architecture (Fig.5), in the test environment PCRF, PCEF are also embedded with LMA for limiting the number of needed VMs.
[7]
B. Basic control scripts We suggested to use the VMware Perl API with Bash eextension to control our virtual environment. Below you can find our basic handover manager script (VMware ESXi IP address needs to be used):
[9]
[8]
[10]
#!/bin/bash ./updateVMPortgroup.pl --username usr --password passwd -server 1.2.3.4 --vmname "MN" --vnic 1 --portgroup "MN-PS" echo "Interface down" ./intdown.exp echo "CHANGE TO MN-PS" ./updateVMPortgroup.pl --username usr --password passwd -server 1.2.3.4 --vmname "MN" --vnic 1 --portgroup "MN-PS" echo "Interface down is done, wait 5 secs" sleep 5 echo "CHANGE TO MN-MAG" ./updateVMPortgroup.pl --username usr --password passwd -server 1.2.3.4 --vmname "MN" --vnic 1 --portgroup "MN-MAG" echo "Interface up" ./intup.exp echo "Interface up is done" sleep 5
[11]
[12]
[13] [14]
[15] [16]
Example Bash script to modify the MN PBR rules in order to proceed an offload:
[17]
function set_udp_for_wifi { check=`ip -6 rule show | grep -cw 0x64` if [ $check -ge 1 ]; then echo "Existing UDP rule, deleting..."
40
C. Perkins, Ed., D. Johnson, J. Arkoo, RFC 6275: Mobility Support in IPv6, July 2011. S. Gundavelli, K. Leung, V. Devarapalli, K. Chowdhury, B. Patil, RFC 5213: Proxy Mobile IPv6, August 2008. WANulator at http://wanulator.de/ I. Grigorik: High Performance Browser Networking, Chapter 7. Mobile Networks, Last visited at 30.03.2015 at http://chimera.labs.oreilly.com/books/1230000000545/ch07.html#_real_ world_3g_4g_and_wifi_performance W. Lam, e-mail: william2003[at]gmail[dot]com, 06/06/2009, http://www.engineering.ucsb.edu/~duonglt/vmware/, Orignal code based on: http://communities.vmware.com/message/840944#840944 Á. Leiter, L. Bokor, A Flow-Based and Operator-Centric Dynamic Mobility Management Scheme for Proxy Mobile IPv6, submitted to IEEE HSPR 2015. www.ieee-hpsr.org/ (Last visited at 30.03.2015.) Eurecom, Open Air Interface PMIPv6 implementation, last visited at 01.04.2015 at http://www.openairinterface.org/openairinterface-proxymobile-ipv6-oai-pmipv6 The FreeRADIUS Project, last visited at 01.04.2015 at http://freeradius.org/ N. Varga, L. Bokor, S. Bouroz, B. Lecroart, A. Takács, Client-based and Cross-layer Optimized Flow Mobility for Android Devices in Heterogeneous Femtocell/Wi-Fi Networks, Procedia Computer Science 40: pp. 26-36. 2014. N. Varga, L. Bokor, A. Takács, Android-Based Testbed and Demonstration Environment for Cross-Layer Optimized Flow Mobility, Lecture Notes of the Institute for Computer Sciences Social Informatics and Telecommunications Engineering 137: pp. 282-292. 2014. Qi W., Robert A., John D., Design and evaluation of flow handoff signalling for multihomed mobile nodes in wireless overlay networks, Computer Networks, 2008. R. Haw; C. S. Hong, A seamless content delivery scheme for flow mobility in Content Centric Network, Network Operations and Management Symposium (APNOMS), 2012 14th Asia-Pacific , vol., no., pp.1,5, 25-27 Sept. 2012. CJ. Bernardos, Proxy Mobile IPv6 Extensions to Support Flow Mobility (draft-ietf-netext-pmipv6-flowmob-11), February 25, 2015. T. M. Trung, Y.-H. Han, H.-Y. Choi, H. Y. Geun, A Design of Networkbased Flow Mobility based on Proxy Mobile IPv6, part of the Mobility Management in the Networks of the Future World (MobiWorld) Workshop, 2011 Iperf, last visited at 02.04.2015 at https://iperf.fr/ Distributed Internet Traffic Generator. last visited at 02.04.2015 at http://traffic.comics.unina.it/software/ITG/ R. Good and N. Ventura, An Evaluation of Transport Layer Policy Control in the IP Multimedia Subsystem, in Proc. of 19th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC), pp. 1-5, Cannes, September 2008.
Design of a Simple Laser Diode Power Control Circuit Gábor Szabó Department of Broadband Infocommunications and Electromagnetic Theory Budapest University of Technology and Economics Budapest, Hungary
[email protected]
power variation can be very dependent on environmental parameters. Even it is not easy to avoid a self destructive output power. Among that the output power is dependent on the input current-voltage characteristics, the semiconductor laser's output power is extremely dependent on the environmental temperature even is the current-voltage parameters are kept stable.
Abstract— The subject-matter of my dissertation is on the field of opto-electronics; it gives a possible solution to the problematics of semiconductor lasers' optical power control. Semiconductor lasers or laser diodes are fairly unstable devices. Beside the common semiconductor temperature stability issues they produce even more interesting phenomena, which are derivable from laser physics. This is why among others the light of a laser diode will be extremely temperature-dependent too. Certain measuring tasks, for example in multi-wavelength reflectometry, can be done mostly with laser diodes because of their narrow optical bandwidth, but accurate measurements need stable optical power. My goal was to design a laser diode control circuit, which can hold steadily and temperature-independently the adjustable optical power of a low-power laser diode commonly used in multi-wavelength reflectometry applications. I realized this with the feedback of built-in monitor photodiode's signal. Comparing to a variable reference it gives the control signal of the parallel regulator. The circuit also capable of intensity modulation of laser diode's light. My circuit is working and fulfilling its duties adequately.
In this paper a novel feedback output power controller circuit is presented. A semiconductor laser diode driver extended with the presented controller circuit can be efficiently used for reflective type optical measurements (like NDVI) where the stable output power is highly recommended. In the first part of this paper the relevant characteristics of laser diodes are introduced. After this the main concept of the novel laser diode driver is presented. Finally the measurement results of the fabricated driver circuit are shown. II.
Light Amplification by Stimulated Emission of Radiation (LASER) can be realized in semiconductor devices also. This type of device can be considered as a cavity resonator, that works as the following:
Keywords: laser, semiconductor, optical, controller
I.
INTRODUCTION
The recent improvements of semiconductor optics give new possibilities for engineers working with these devices. The improved properties of semiconductor LASER devices enable their usage in high precision applications.
The forward bias creates the population inversion, that is when there is a majority of the stimulated atoms with greater energy level. In this situation randomly occurring spontaneous emissions generate photons, that also generate stimulated emissions. This causes an avalanche effect, where the number of generated photons heavily increases.
Their small size and relative narrow optical bandwidth are ideal for optoelectronic measurements, like NDVI (normalized differential vegetation index) measuring. This is a reflective type measurement that has to be carried out at two wavelengths, and the NDVI value can be calculated by a formula:
NDVI
PNIR PRED , PNIR PRED
RELEVANT CHARACTERISTICS OF LASER DIODES
Depending on the geometry of the cavity and the frequency dependence created by the semiconductor material standing waves will evolve, and an equilibrium is created among the stimulated emissions and absorptions. In this state the device can output near monochromatic light with the help of a halfway transparent mirror. [3]
(1)
From the circuit designers viewpoint, the laser diodes can be considered as a traditional diode element, where the current voltage characteristics can be calculated from the Shockley formula.
where PNIR is the power of reflected near-infrared radiation, PRED is the power of reflected red light.
U I I S exp n U T
This method requires that the optical test source, whose light is reflected by objects under measurement, has a stable output power. However the semiconductor laser devices output
41
1 ,
(2)
where
Fortunately most of the packed semiconductor laser diodes come with an integrated monitor diode. This is a simple photodiode that is connected to the light output of the laser diode. In this way the output of the monitor diode is proportional with the output power of the laser diode.
I is the current flowing through the diode, U the bias voltage of the diode, IS the saturation current,
Considering this, my aim is to create a feedback controller circuit that can control the output power of the laser diode based on the measured light intensity on the monitor diode [4].
n the ideality factor, UT the thermal voltage ( U T
kT , where k is the e
l i g h t i n t en s i ty
Boltzmann constant, T is the temperature in Kelvin, e is the elemental charge). Considering the thermal dependent exponential characteristics a current generator driver is required to avoid thermal destruction. While the optical power is a function of the forward current in a light emitting diode (LED), this is clearly not true with laser diodes. For these type of devices the calculation of the output power is more complex (Figure 1)
T1
T
T2 >T agei ng
for ward c urrent Fig. 2
Temperature dependence and ageing effects on light intensity III.
THE DRIVER CIRCUIT
The block diagram of the parallel control circuit laser diode driver can be seen in Figure 3. The novelty of the driver is that the blocks can be connected to each other easily and an absolute maximum can be also set up. Ig Ic
Im Id
Fig. 1
variable current source
Laser diode light intensity vs. forward current, schematic
c on tr o l l e r
l a s e r d io de
modulator
mod.
Below the threshold current there is not LASER effect, only minimal light is generated due to spontaneous emissions. By increasing forward current above threshold current the LASER effect generates optical output that is proportional to the forward current till we reach the saturation point.
Fig. 3
The main problem with this is that the threshold current is extremely dependent on environmental parameters and also affected by aging too (Figure 2). At lower temperatures the threshold current is lower, and there can be situations where the applied current (that normally is almost above threshold) creates an output power – due to the high ascent of the light intensity-forward current curve – that can destroy the device [5]. In this way all semiconductor laser devices require their forward current to be controlled based on the output light power. In this way also the aging and other short term instabilities can be compensated [2].
Block diagram of the parallel laser diode control circuit
The circuit is based on a controllable current generator. The maximal driver current can be set here. The controller part is comparing the current of the monitor diode with a variable built-in reference level. Based on this measurement it can draw out current from the laser diode that was generated by the current generator. In this way the current on the laser diode can be decreased. By attaching a modulator to the circuit, we can create a simple one frequency variation of the output light intensity of the laser diode. This is necessary for reflective measurements, as we have multiple narrow wavelength optical sources and a
42
wide-band detector. By using a frequency modulated light intensity, we can differentiate between the different light sources and environmental light also.
way the monitor diode could be characterized, and the appropriate target current of the monitor diode could be set. Finally the controller circuit was turned on, and measurements were done in order to indicate the temperature dependence of the whole device.
The concept of the modulator is the same as for the controller: it can draw out current from the current generator that driver the laser diode. However this complicates the original controller circuit, as we have to avoid the controller eliminating the modulation signal. For this the controller has been designed in a way, that the controlling frequency is well below the modulating frequency. This is achieved by controlling to the average output power of the monitor diode. The designed circuit can be seen in Figure 4.
The results has shown a -0.25 %/°C dependence. Unfortunately the datasheet of the laser diode did provide the bare temperature dependence of the device, so a device with similar characteristics was used as a reference. After calculations it has been found that -0.05 %/°C of the measured dependence is caused by the driver circuit. V.
CONCLUSION
After evaluating the driver-controller, we can conclude that the proposed solution is suitable for controlling laser diodes output power in reflective optical measurements (like measuring NDVI). The designed circuit also has the ability to put a frequency modulated signal on the laser diode by varying the output power in a manner that does not interact with the output power stabilizer circuit. The tested laser diode attached to the proposed driver produced -0,25 %/°C temperature dependence that can be considered good in comparison with similar devices.
Fig. 4 IV.
Also after evaluating the driver-controller circuit we found that this temperature dependence can be decreased even more, is the circuit is built with high temperature tolerance elements.
Photograph of the circuit was done
REFERENCES
THE WORKING DRIVER AND CONTROLLER CIRCUIT
[1]
The fabricated circuit was tested with a HLDH-650-A-10-01 codenamed 650 nm (red) 10 mW laser diode. At first the maximum current of the current generator was set to a level below the threshold current (level according to the datasheet at 25 °C). In this way a minimal light output could be observed, that is caused by spontaneous emissions. After this the current generator was tested alone without the controller circuit. The driver current was increased to a level where the nominal light intensity could be observed. In this
[2] [3] [4] [5]
43
S. M. Sze, Kwok K. Ng – Physics of Semiconductor Devices (Third Edition; Wiley-Interscience, 2007) Gerhátné dr. Udvary Eszter – Az optikai hálózatok alapjai, university lecture notes (BUTE SzHVT) S. O. Kasap – Optoelectronics and Photonics: Principles and Practices (Prentice Hall, 2001) Hamamatsu Photonics K.K. Opto-semiconductor handbook, Chapter 02: Si photodiodes (unknown author) Sam's Laser Diode FAQ (Copyright © 1994-2015, Samuel M. Goldwasser) http://www.repairfaq.org/sam/laserfaq.htm (2015.03.17.)
1
R–DFT alapú csatornabecslés a 802.11ad rendszerben Csuka Barna és Kollár Zsolt Szélessávú Hírközlés és Villamosságtan Tanszék Budapesti M˝uszaki és Gazdaságtudományi Egyetem 1111 Budapest, Egry József utca 18. E-mail:
[email protected],
[email protected]
Kivonat—Cikkünkben egy, a rekurzív diszkrét Fouriertranszformáción (R–DFT) alapuló átviteli csatornabecsl˝o eljárás kerül bemutatásra, speciálisan a 60 GHz-es frekvenciasávban muköd˝ ˝ o WiGig rendszerekhez. Célunk, hogy bemutassuk az R– DFT alkalmazásának el˝onyeit a gyors Fourier-transzformáción és a korrelációs számításokon alapuló csatornabecsl˝o eljárásokhoz képest. Az említett módszereket összehasonlítjuk hardverigényük, illetve a csatornabecslések varianciája alapján. Az eljárásokat a 802.11ad csomagszerkezete alapján vizsgáljuk. Kulcsszavak—R–DFT, csatornabecslés, valós ideju˝ mérés, FPGA, alacsony komplexitás, WiGig
I.
B EVEZETÉS
VEZETÉK nélküli, magas átviteli sebesség˝u kommunikációs eljárások gyors és pontos paraméterbecslést igényelnek, hogy megfelel˝oen kompenzálhatóak legyenek az átviteli lánc hibái. Többek között ilyen hiba a frekvenciailletve fázis offset, avagy az átviteli csatorna nem ideális átviteli karakterisztikája. Ezenfelül elvárás a nagyfrekvenciás rendszerek esetében – mint pl. a 60 GHz-es WiGig – az is, hogy az algoritmusok alacsony komplexitásúak legyenek, de a pontosságukból ne veszítsenek; továbbá az eszközök meg˝orizzék a magas adatátviteli sebességet, miközben alacsony marad az energiafogyasztás. Cikkünk els˝odleges célja a rekurzív diszkrét Fouriertranszformáció (R–DFT) [1] adatátviteli rendszerekben történ˝o alkalmazhatóságának bemutatása. Az eljárás egy kevésbé ismert megoldás egy jel diszkrét Fourier-transzformáltjának (DFT) valós idej˝u kiszámítására. A konvencionális, DFT-b˝ol képzett sz˝ur˝ostruktúrák [2] a kvantálási hiba következtében instabil állapotba kerülhetnek, és így téves eredményt adhatnak. Ezzel szemben az R–DFT adott beállási id˝o és lépésszám után konvergens eredményt ad. Mostanáig els˝osorban méréstechnikai eljárásokban használták az R–DFT-t spektrális felbontásra – pl. periódikus jelek harmonikusainak mérése [3] –, de már vezeték nélküli kommunikációs eljárások esetén is kezdték alkalmazni [4]. Cikkünkben az R–DFT egyik lehetséges alkalmazását mutatjuk be az IEEE 802.11ad szabványhoz [5] kapcsolódó csatornabecslésen keresztül. A II. részben el˝oször ismertetjük az R–DFT struktúrát, majd a III. részben a szimulációk során alkalmazott 802.11ad szabványú átviteli rendszer csomagszerkezetének csatornabecsléshez alkalmazható részét mutatjuk be. Ezt követ˝oen a vizsgált
A
csatornabecslési eljárásokat tárgyaljuk a IV. részben, többek között a javasolt, R–DFT alapú eljárást is, majd szimulációk segítségével összehasonlítjük a különféle eljárások csatornabecslésének varianciáját. A VI. fejezetben a módszerek komplexitását és hardverigényét is összehasonlítjük, végül cikkünket az összefoglalással zárjuk. II.
R EKURZÍV DISZKRÉT F OURIER - TRANSZFORMÁCIÓ
A hagyományos DFT-t, illetve hardveres implementációját, a gyors Fourier-transzformációt (FFT) N hosszúságú adatblokkon alkalmazzuk; az eljárásnak várnia kell N bejöv˝o adatra, és csak ezek beérkezése után tudja az N pontos spektrumot kiszámolni. Ez a várakozás késleltetéseket okoz a rendszer m˝uködése során, miközben a valós idej˝u alkalmazásokban olyan eljárásokra lenne szükségük, amely minden egyes bejöv˝o adat után tud N pontos spektrumot számolni.
1. ábra. Az S–DFT blokkvázlata A DFT folytonos számolására a szakirodalomban a csúszóablakos DFT-t (Sliding DFT [S–DFT]) javasolják [2], amely Lagrange-struktúrán alapuló sz˝ur˝obankkal oldja meg ezt a problémát. Az S–DFT struktúrája az 1. ábrán látható. Az alapgondolat a csúszóablakos átlagoló sz˝ur˝ob˝ol indul, amit komplex rezonátorokkal egészítünk ki. A rezonátor a jelet 2π ej N i -vel modulálja, így eredményként megadja az i. spektrális komponenst 2π N i frekvencián, ahol a mintavételi frekvencia egységnyi, és i az aktuális sz˝ur˝onek a sorszáma. Amennyiben
44
2
ezek negált változatai. Ebben az alkalmazásban a szekvenciák 128 pont hosszúságúak, melyeket a következ˝oképpen jelölünk: Ga128 , −Ga128 , Gb128 és −Gb128 . Ezen szekvenciák könnyen generálhatóak az ún. Golay-generátorral (A. függelék), ahol az N = 128 esetre meg is adtuk a szükséges beállítási paramétereket [6].
4. ábra. Az STF és a CEF felépítése 2. ábra. Az R–DFT bokkvázlata N ilyen sz˝ur˝ot alkalmazunk, akkor ez a sz˝ur˝obank mindig az utolsó N minta spektrumát adja meg. Az S–DFT eljárás hátránya, hogy m˝uködése során kritikus a stabilitása, mivel a sz˝ur˝o pólusai a komplex egységkörön helyezkednek el. Amennyiben az alkalmazott aritmetikai egység fixpontos számábrázolással dolgozik, el˝ofordulhat, hogy a rezonátorok abszolút értéke nem pontosan egységnyi. Ilyen esetben a rendszer vagy a végtelenbe divergál, vagy pedig a nullába konvergál [2], így pontatlan eredményt szolgáltat. Másik megoldás a pontonkénti spektrumszámítás problémájára a Péceli által javasolt R–DFT [1]. A javasolt, megfigyel˝o elméleten alapuló struktúra a 2. ábrán látható. Ez a megoldás hibajelet modulál úgy, hogy az i. rezonátor értéke gi [k] = 1 −j 2π N ki . A zárt szabályozási kör létrehozása céljából a Ne e0 . . . X eN −1 ) demoduláljuk a becsült spektrális értékeket (X 2π komplex konjugált rezonátorokkal, vagyis ci [k] = ej N ki -vel. Az így el˝oállított, majd visszacsatolt jel (e x [k]) a bemeneti jelnek lesz a becsl˝oje. A bemeneti jel és a becsült jel különbsége lesz a bemeneti hibajel, e[k] a rendszer számára. Péceli azt is megmutatta, hogy ez a megfigyel˝o struktúra ekvivalens a Lagrange-struktúrával, és az N lépéses konvergencia mindig elérhet˝o [1]. A struktúra további el˝onye még, hogy az S–DFTvel szemben a pólusok pontatlansága nem okoz divergenciát. III.
802.11 AD CSOMAGSZERKEZETE
Az STF és a CEF mez˝ok felépítése a 4. ábrán látható. Az STF egy periódikus jel, amelyben 20-szor ismétl˝odik meg a Ga128 , majd egy −Ga128 mez˝ovel zárul. Ezzel szemben a CEF nem periódikus, viszont komplemens szekvenciákat tartalmaz, így ez a rész a csatornabecsléshez használható fel. Három f˝o része van: egy Golay-U (Gu512 ), egy Golay-V (Gv512 ) és egy −Gb128 szekvencia. IV. C SATORNAKARAKTERISZTIKA BECSLÉSE A rádiós csatorna frekvencia-szelektivitása miatt kompenzálni kell a vett jelet a demoduláció el˝ott. Ennek elvégzéséhez becsülni kell az átviteli csatorna karakterisztikáját. Ebben a részben a preambulum alapján becsl˝o eljárásokat mutatjuk be: el˝oször a korrelációs eljárást, majd pedig az FFT-alapú becsl˝ot, legvégén pedig egy újszer˝u, ún. b˝ovitett, FFT-alapú eljárást. IV-A. Korrelációalapú becslés Ahogy a III. részben említettük, a CEF részei egymás komplementerei illetve negáltjai, ami a korrelációszámítás szempontjából kedvez˝o tulajdonság. El˝oször a CEF-nek a Ga128 illetve a Gb128 szekvenciákkal vett korrelációját kell kiszámolni. A kapott értékeknek éles csúcsuk van; amennyiben ezeket a korrelált sorozatokat megfelel˝o pozícióba toljuk, akkor a csúcsok egymásra lapolódnak. Ebben az esetben – mivel a sorozatok értékei egymás negáltjai – a csúcs körüli értékek zérusok lesznek, kivéve magát a csúcsot. Így a csúcs, és az utána következ˝o pontok tartalmazzák a csatorna impulzusválaszát (amennyiben az nem egy hosszú).
Ebben a részben az általunk vizsgált 802.11ad csomagszerkezetét mutatjuk be [5]. Az adatcsomag, ahogy a 3. ábra mutatja, a következ˝o részekb˝ol épül fel: preambulum, fejléc, adatrész illetve a nyalábformálási adatok. Cikkünkben csatornabecslés céljából csupán a preambulumot használjuk fel, így a következ˝okben csak ennek a bemutatására szorítkozunk.
5. ábra. C–FGC sematikus felépítése
3. ábra. A 802.11ad csomagszerkezete A preambulum az ún. rövid szinkronizációs részt (Short Training Field – STF) és az ún. csatornabecsl˝o részt (Channel Estimation Field – CEF) tartalmazza. Ezen mez˝ok alap épít˝oelemei a komplemens Golay-szekvenciák (A. függelék), melyeknek négy típusa van: Golay-A (Ga ), Golay-B (Gb ), illetve
Ezen korrelációk kiszámítására jó megoldást nyújt a Golaykorrelátor. Ennek több változata ismert, jelen esetben az ún. gyors Golay-korrelátort használjuk [6]. Az eljárás ugyanúgy m˝uködik, mint a generátor (lásd 1. egyenlet), csupán a kezdeti értékek (a0 és b0 ) nem a Kronecker-féle deltafüggvényt veszik fel, hanem az aktuálisan fogadott adatot.
45
3
Ahhoz, hogy komplex csatorna esetén is helyes eredményt kapjunk, módosítani kell a gyors Golay-korrelátort, hogy külön-külön tudja számolni a valós és a képzetes résszel vett korrelációkat. A b˝ovített korrelátor, a komplex gyors Golay-korrelátor (Complex Fast Golay Correlator [C–FGC]) felépítése az 5. ábrán látható. IV-B. Fourier-transzformáció alapú becslés Másik eljárás a csatorna becslésére a Fouriertranszformáció. Ebben az esetben a Gu512 és a Gv512 eU és X eV lesznek, melyek becsült spektrális megfelel˝oi X FFT-vel számíthatóak. Az elméleti, ideális spektrális értékek legyenek XU és XV , melyeket korábban már kiszámítottunk és elmentettük referencia értékekként. e a következ˝o módon A csatorna átviteli függvénye (H) e e eV = X eV /XV . Ez a fejezhet˝o ki: HU = XU /XU és H e ch két becslés összevethet˝o, és a becsült átviteli függvény H e e e megadható a HU és HV átlagolásával, végül a Hch -b˝ol inverz diszkrét Fourier-transzformációval kiszámítható a csatorna impulzusválasza. Fontos megjegyzés: az XU spektrumának az els˝o binje zérus, ezért a nullával való osztás elkerülése végett e U els˝o binjét interpolálni kell, vagy pedig a H e V megfelel˝o aH értékével kell helyettesíteni. A II. részben már bemutatott R–DFT sz˝ur˝oblokk alkalmazása más átviteli paraméterek becslésére kifejezetten el˝onyös, így célszer˝u a folyamatosan m˝uköd˝o blokk eredményeit felhasználni a csatorna átviteli függvényének becslésére is. A CEF-nek két f˝o része van: Gu512 és Gv512 , melyek 512-512 pont hosszúak. Ezért az N -t 512-nek kell választani, hogy teljesüljenek a konvergenciakritériumok [1]. A számítás menete ugyanaz, mint az FFT-vel való esetben, csak éppen most egy R–DFT-blokk adja meg a spektrális értékeket. Mivel az R–DFT folyamatosan számol, ezért a Gu512 spektruma akkor lesz érvényes és helyes, amikor a szekvencia utolsó pontját is megkapta és feldolgozta a sz˝ur˝oblokk. Hasonlóképpen kell eljárni a Gv512 spektrumának esetében is.
6. ábra. B˝ovített FFT A CEF a Gu512 és a Gv512 elemeken kívül egy lezáró −Gb128 elemet is tartalmaz (III. rész), ami ciklikusságot visz a CEF-be, ugyanis mindkét, 512 hosszú blokk egy −Gb128 cal kezd˝odik. Így lehet˝ové válik, hogy a Gv512 spektrumát újra kiszámoljuk az utolsó −Gb128 beérkezése után is (lásd 6. ábra). A −Ga128 egy hasonló, ciklikusságot biztosító blokk, így amennyiben az STF utolsó, −Ga128 mez˝ojét is felhasználjuk, akkor a Gu512 spektruma is kétszer számolható ki. Ezzel az új megoldással kett˝o helyett négy becsült spektrumot lehet átlagolni, a hozzáadott, 128 hosszú blokkok egynegyed részt függetlenek a korábbi adatoktól, így az eredmény varianciája csökkenthet˝o.
V.
C SATORNABECSLÉS SZIMULÁCIÓJA
Ebben a részben a szimulációs eredményeket mutatjuk be. A küldött csomag egy STF és egy CEF mez˝ot tartalmaz, melyek a 802.11ad szabványnak megfelel˝oen forognak a komplex síπ kon ejk 2 -vel [5]. A csatorna zajának hatásának szimulálására véletlen, normál eloszlású komplex számokat adunk a küldött adatokhoz. A IV. részben bemutattuk a f˝o eljárásokat a csatorna becslésére, melyeket ebben a részben vizsgálunk meg. A korrelációs megoldást a C–FGC adja (lásd a IV-A. részben). A Fouriertranszformáció alapú megoldás mind FFT-vel, mind R–DFTvel ki lett számolva, ahol N = 512 volt. Mivel mind a két eljárás azonos eredményt ad, ezért összevonva, FFT/R–DFTként jelöltük o˝ ket. Az új megoldásokat is megvizsgáltuk. Az els˝o esetben az STF utolsó, −Ga128 , majd a CEF utolsó, −Gb128 blokkjait is felhasználtuk (B˝ovített FFT/R–DFT), az eljárás b˝ovebb leírása a IV-B. részben szerepel. Másik újításunk az STF felhasználása a csatorna becslésére. Az STF-ben található Ga128 blokkok átviteli függvényei N = 512 pontos felbontással kiszámolhatók, amennyiben nullákat szúrunk be, hogy a hosszukat 128-ról 512-re növeljük. A kapott eredmények átlagolhatóak a DC-komponens kivételével, mivel a Ga128 nem tartalmaz DC komponenst. Ezzel az eljárással (STF-fel b˝ovített FFT/R–DFT) jobb eredményeket kaphatunk, amennyiben a csatorna frekvenciamenete konstans. A szimulációk során a jel-zaj viszonyt, az SNR-t 0 dBt˝ol 40 dB-ig növeltük 2 dB-es lépésközzel. Minden egyes SNR értékhez 25 átvitelt generáltuk, majd minden átvitelre kiszámoltuk a becsült impulzusválaszokat. A kapott eredményeket átlagoltuk, és a varianciát is kifejeztük. A szimulációk eredményét a 7. ábra mutatja. Az impulzusválasz – melynek a becsl˝ojét kerestük – hosszúsága 1 illetve 2 volt.
VI.
E LJÁRÁSOK ÖSSZEHASONLÍTÁSA
A cikkben bemutatott eljárások akkor a leghatékonyabbak, ha FPGA-n vagy ASIC-n futnak, vagyis a becsléseket nem szoftverrel, hanem hardverrel számítjuk ki. Ebben a fejezetben bemutatjuk az új, ajánlott eljárások hardverigényét komplex bemen˝o adatokra úgy, hogy az alkalmazott aritmetikai egységek valós értékeken dolgoznak. A komplex aritmetikai m˝uveletek eszközigénye a következ˝oképp lett számolva: az összeadáshoz két valós összeadó szükséges, míg a szorzás három valós szorzót és öt valós összeadót igényel. Továbbá azt is megvizsgáljuk, hogy a szimulációs eredményeket tekintve melyik megoldás ad jobb eredményt.
VI-A. A C–FGC komplexitása Az 5. ábra mutatja a C–FGC felépítését. Egy szint csupán egy komplex szorzót, két komplex összeadót és Dn tároló tartalmaz. Így az n = 7 rekurzió esetén a valós és a képzetes szekvenciák kiszámításához 45 szorzó, 131 összeadó és 508 tároló szükséges (lásd az I. táblázatban).
46
4
10-2 3
10-3
VII. Ö SSZEFOGLALÁS A VI-C. részben elmondottak alapján kijelenthet˝o, hogy mind az R–DFT, mind a C–FCG hatékony megoldás az átviteli csatorna becslésére. A komplexitásuk arányos a pontosságukkal, így nem kell ezen két fontos tulajdonság közül választani. Ahogy a VI-C. részben említettük, az R–DFT el˝onye a C– FCG-hez képest, hogy nem csak a jelen cikkben vizsgált paramétert tudja becsülni, hanem más paraméterek becsl˝ojét is hatékonyan számítja az átvitel során, így egy homogén R– DFT-struktúra alkalmazásával többcélú egység állítható el˝o. A Fourier-transzformáció általunk javasolt megvalósítása az I. táblázat alapján az R–DFT. További nagy el˝onye az FFT-hez képest, hogy párhuzamos ágakból épül fel, emiatt az R–DFTt FPGA-n vagy ASIC-en futtatva nagy átereszt˝oképesességet érhetünk el.
×10 -6
2 1
Variancia
10-4 0 30
10
32
34
-5
10-6 C-FGC FFT/R-DFT
10-7 10-8
0
5
10
15
20
25
30
35
40
SNR [dB] 10-2 3
10-3
×10 -6
2 1
F ÜGGELÉK A KOMPLEMENS G OLAY- SZEKVENCIÁK Golay olyan bináris szekvenciákat mutatott be [8], amelyek páronként egymás komplementerei. Ez azt jelenti, hogy az autokorrelációjuk összege zérus, kivéve, ha maga az id˝oparaméter, a k zérus. Budišin adta meg a következ˝o algoritmust [6], mellyel a megfelel˝o, N hosszú Golay-szekvenciák – a [k] és b [k] – generálhatóak:
Variancia
10-4 0 30
32
34
10-5 10-6 C-FGC FFT/R-DFT
10-7 10-8
0
5
10
15
20
25
30
35
40
SNR [dB]
a0 [k] = b0 [k] = δ [k] an [k] = an−1 [k] + Wn · bn−1 [k − Dn ]
7. ábra. A becsült impulzusválasz varianciája az SNR függvényében 1 illetve 2 hosszú impulzusválasz esetén
bn [k] VI-B.
Fourier-transzformációk komplexitása
Duhamel megadta különböz˝o FFT-megvalósítások komplexitását [7]. Ebben az esetben a leghatékonyabb megoldást, a Split-Radix FFT-t vettük alapul az összehasonlításhoz. Az er˝oforrás-igényeket az I. táblázat mutatja N = 512 esetre. Az R–DFT felépítését a 2. ábra mutatja. Minden ág két komplex szorzót és egy komplex összeadót tartalmaz. Továbbá még egy komplex összeadóra van szükség a bemeneten, illetve N − 1 összeadóra a kimeneten. Az összesített értékeket az I. táblázat tartalmazza.
VI-C.
Split-Radix FFT
R–DFT
3 076
3 072
45
Összeadók
12 292
7 168
131
Tárolók
0
1 024
508
ahol δ [k] a Kronecker-féle deltafüggvény, n a rekurziók száma. A Wn a szorzó együtthatókat tartalmazza, míg Dn a késleltet˝o elemek hosszát adja meg. Az N = 128 esethez a szabványnak megfelel˝o szekvenciák generálásához a következ˝o értékek szükségesek a inicializáló vektorokhoz, n = 7 rekurziós lépést (mivel log2 N = 7) alkalmazva [5]: W
=
D =
[−1, −1, −1, −1, +1, −1, −1] , [1, 8, 2, 4, 16, 32, 64] . H IVATKOZÁSOK
I. táblázat. Csatornabecsl˝o eljárások hardverigénye Szorzók
(1)
= bn−1 [k] − Wn · bn−1 [k − Dn ] ,
C–FGC
Szimulációs eredmények összehasonlítása
A kapott szimulációs eredményeket a 7. ábra grafikonjai mutatják. A konvencionális FFT és a javasolt, új megoldások (C–FGC, R–DFT, b˝ovített Fourier-transzformáció) azonos eredményt adnak kicsi varianciabeli eltéréssel. Amennyiben az impulzusválasz hossza egy, vagy az SNR alacsony, akkor az el˝oz˝o eljárások helyett el˝onyösebb az STF-t is felhasználni a becsléshez. Ugyan a C–FGC komplexitása nagyon alacsony, viszont az eljárás csak csatornabecslésre használható fel, miközben az R–DFT-vel más átviteli paraméter is becsülhet˝o.
[1] G. Péceli, „A common structure for recursive discrete transforms,” IEEE Trans. Circuits Syst., vol. 33, no. 10, pp. 1035–1036, Oct. 1986. [2] E. Jacobsen and R. Lyons, „The sliding DFT,” IEEE Signal Process. Mag., vol. 20, no. 2, pp. 74–80, Mar. 2003. [3] G. Orosz, L. Sujbert, and G. Péceli, „Analysis of Resonator-Based Harmonic Estimation in the Case of Data Loss,” IEEE Trans. Instrum. Meas., vol. 62, no. 2, pp. 510–518, Feb. 2013. [4] L. Varga and Z. Kollár, „Low complexity FBMC transceiver for FPGA implementation,” in Radioelektronika, 2013 23rd International Conference, Apr. 2013, pp. 219–223. [5] „IEEE Standard for Information Technology – Telecommunications and information exchange between systems Local and Metropolitan Area Networks – Specific requirements Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications,” IEEE Std 802.11-2012 (Revision of IEEE Std 802.11-2007), Mar. 2012. [6] S. Z. Budišin, „Efficient pulse compressor for Golay complementary sequences,” Electronics Letters, vol. 27, no. 3, pp. 219–220, Jan. 1991. [7] P. Duhamel, „Implementation of "Split-radix" FFT algorithms for complex, real, and real-symmetric data,” IEEE Trans. Acoust., Speech, Signal Process., vol. 34, no. 2, pp. 285–295, Apr. 1986. [8] M. J. E. Golay, „Complementary series,” IRE Trans. on Inf. Theory, vol. 7, no. 2, pp. 82–87, Apr. 1961.
47
Design and development of a Bluetooth based indoor positioning system András Balogh, Sándor Szabó Department of Networked Systems and Services Budapest University of Technology and Economics Budapest, Hungary
[email protected],
[email protected] plenty of measurements (making the system less responsive) for reaching the accuracy proposed.
Abstract— Nowadays, as the Location Based Services take an important role in our technological context, there is a significant demand arisen for an indoor positioning technique, that can be used in wide range of mobile devices (just like the GNSS systems outdoors). Though there were numerous positioning systems proposed in the last decade, which were based on Bluetooth, WiFi, GSM, 3G and others, none of them was general, robust, responsive, scalable, or feasible enough to be used widely, as almost every approach was optimized for accuracy, instead of usability. In this paper an experimental Bluetooth based positioning system is proposed, which was derived using measurements that were carried out on different mobile devices. The solution relies on minimal set of informations available in almost every mobile OS, moreover it meets the criteria of robustness and responsivity. The system was verified in real world environment, and showed great potential in terms of feasibility and scalability also.
As there is no widely usable approach, in this paper a finegrained design process is followed, which takes into consideration as much criteria as possible to build a system that is widely and easily usable, and has scalable enough accuracy to be used in different everyday indoor LBS applications. The rest of this paper is organized as follows. In section II. the design process is described. In section III. the experimental implementation, results and current limitations are discussed. In section IV. the conclusion of this paper is drawn. II. DESIGN PROCESS A. Design Criteria The given criteria, along which the sytem was designed, were composed using a practical approach. The system should have met the followings: The system shall provide an indoor positioning functionality on the widest range possible of mobile devices, without any kind of additional hardware, that should be worn by the user. The system shall be easily adaptable to the chaotic environments and the mobile phone usage. This implies that it shall tolerate the crowded spaces (causing unpredictable fading and radio interference), the different effects of holding a mobile device in hand (e.g. human body shadowing, mismatching antennas, etc.). The system shall be responsive enough to track a moving person. As the latency and the accuracy are not independent variables, an optimal and scalable solution should be found. The system shall be robust and easily applicable. This implies, that it shall make as little demands on the application environments, as possible. Moreover the system shall provide a scalable cost structure. The system shall remain in complete conformance with the Bluetooth specification to maintain the compatibility with the currently available mobile devices.
Keywords—Bluetooth, Indoor Positioning, Mobile Devices, Bluetooth Low Energy, RSSI measurements
I. INTRODUCTION The task of global positioning became pervasive with the fast spread of different mobile devices (e.g. PDA, smartphones), as almost every appliance was manufactured and distributed with built-in GPS/GLONASS receivers and the appropriate navigation softwares. Though these devices were able to determine the actual global position coordinates using the signals broadcasted by the different GNSS satellites, when the radiopath was obstructed (e.g. indoors, under the Earth’s surface, etc.), one could make little use from these systems. As the Location Based Services (LBS) evolved outdoors (e.g. navigation, location-aware marketing, etc.), and there was no dedicated and widely available positioning technology for indoor environments, there were many solutions proposed to achieve the same functionality using the different wireless technologies (e.g. GSM, 3G, Wi-Fi, Bluetooth, etc.) that were available in the different mobile devices. Especially if we take into account the Bluetooth [1] based approaches, though there are many promising solutions, either they are using only the Low Energy (LE) variant of the technology (e.g. [2-3]) (which has limited availability on the different mobile platforms), or the given positioning method needs complex infrastructure (e.g. [4-5]) (that makes the system expensive and difficult to adapt) and/or highly specific wearable hardware equipments (e.g. [6-7]), while relying on
48
intruduces additional delay and complexity in contrast to a system that makes use of only the inquiry and scanning procedures. To meet the criteria of responsivity, the discovery based RSSI values were preferred afterwards.
In the following subsections the decisions made subsequently to the given limitations and the points listed above, are discussed. B. Choice of Technology, Parameters and Architecture Browsing the Bluetooth APIs of the different mobile platforms (such as iOS, Android, and Windows Phone), it can be quite easily derived that neither a Bluetooth LE only, nor a system based only on traditional Bluetooth can fulfill the criteria of the widest range usage. As the Bluetooth Low Energy (BLE GAP Central) functionality was officially introduced in Android 4.3 (2013), and in Windows Phone 8.1 (2014), there numerous mobile devices nowadays in use which does not provide Bluetooth LE functionality. Moreover, it shall be taken into consideration that the current Windows Phone functions only work with previously paired BLE devices, which makes an LE only system just unusable in positioning tasks. Hence only a dual mode (Low Energy and traditional Bluetooth) system can be applicable in a general positioning system for mobile devices.
Nevertheless in an active positioning infrastructure either the position estimations, or the measured RSSI values shall be forwarded to the mobile devices, for which (following the reasoning above) in-band methods are not suitable, the availability of cellular or Wi-Fi technology is critical. As the infrastructure introduces additional complexity to the system, an active system does not meet the criteria of robustness, general usage, and cost efficiency. Hence a passive infrastructure was preferred, where the dual mode Bluetooth beacons can be discoverable using both LE and traditional Bluetooth, while the measurements and position estimations were made by the mobile devices. Though it should be noted, that the Windows Phone based devices are only able to acquire the MAC address of the discovered device and no RSSI value is available, so the given method should be scalable by the availability of RSSI measurements.
Based on the extensive report of A. Hossain et al. [8], in traditional Bluetooth technology there are two different parameters, that worth being used for any kind of position (distance) estimation. The first is the Link Quality (LQ) integer value, that is based on the BER measured in Connection state. The second parameter is the Received Power Level (RPL), that is reported by the Bluetooth stack as RSSI (Receive Signal Strength Indication), a signed integer value (in dBm) when a new device is discovered (using the inquiry procedure, defined in the specification). In Bluetooth Low Energy, the same (RSSI) terminology and format is used for the reported the signal strength measured either in connection, or at the discovery phase (scanning).
C. Latency and RSSI Measurements Using a passive infrastructure, the main sources of inaccurate position estimations are the accuracy and the latency of RSSI measurements in mobile devices, as the different positioning techniques (such as trilateration and fingerprinting) rely on these values. As there was no RSSI measurements like this reported, a multi-purpose (latency) measurement was made using 9 different mobile devices in a typical office environment (Figure 2.).
Figure 2. Positions of measurements
At every meter (1-14), 200 sample was acquired, to analyse that how these distances can be distinguished in the context of one device. As it is reported by B. Peterson et al. [9], the discovery latency is affected by the number of inquirer devices also, so in this measurement all of the mobile devices were discovering at the same time using the traditional Bluetooth technology.
Figure 1. An active positioning infrastructure
As in the different mobile platforms these parameters does not have much availability in common, it is a possible way to use an active positioning infrastructure (Figure 1.), where all the parameters are available on the system side, where all the measurements can be carried out, and the position can be derived and forwarded in- or out-of-band to the user.
The first scope of the measurement was to determine the minimal time interval between two consecutive RSSI samples of the same device. It can be easily derived, that this time interval corresponds to the available minimum latency of the simplest positioning system based on traditional Bluetooth, in
Though it should be taken into consideration, that in traditional Bluetooth the connection related LQ parameter is only available, after the connection is made using the inquiry and and a subsequent paging procedure, which is a time (around 5-10s) and energy demanding activity [8]. Moreover the management (handover, creation, etc.) of these connections
49
which only one device should be discovered and only one sample is taken into consideration. Even if only one sample is needed for the position estimation, around 9 second is needed with 90% of probability for a given device to find the appropriate Bluetooth beacon. If there is more sample needed, this latency grows proportionally. As this limit is caused by the Bluetooth technology itself, there is no other way to get around this. This implies, that if the RSSI measurements are not accurate (or at least deterministic) enough, there is no point relying on them, as the system become absolutely unresponsive.
Figure 5. Density of RSSI values at given distances
D. Positioning technique For position estimation there are different methods that can be used. One of these common approaches is the trilateration [10], that calculates the current coordinates, from known reference points, and the distance measured from them. As the distance can be derived from the given channel characteristics (such as Friis model), it can easily calculated that even 7dB of measurement error will result in around 2:1 ratio between the estimated, and real distance. Moreover, usually 3 reference points are needed to determine a position in 2D, which could result in unresponsivity, and every obstacle (e.g. homan body) in signal path will result in perturbance, that will degrade the overall performance of the system. This way, even for 3 meters of accuracy, the reference points should be placed with high density (around 6m from each other).
Figure 3. Distribution of discovery latency (P=0,999 upper limit)
Though the average RSSI values (Figure 4.) shows some kind of correlation with the distance, even the average values (with standard deviation 2-7dB) had an absolute difference of 5-10dB, because of which the given distances can be barely distinguished. Moreover the Sony Xperia P recorded absolutely unreliable RSSI values (distributed equally between 3dBm and 40dBm), so there is a need for an RSSI measurement classification method, as there could be more devices in use with the same discrepancy.
Another possibility is to use the fingerprinting [10] method, which relies on previously measured RSSI statistics in given reference points in the learning phase. In positioning phase the actual measurements are compared with the given reference points, and using different classification methods (such as k nearest neighbour) an estimation is made for the current position. Though it is reported, that the fingerprinting method is really sensitive to the “clarity” of the given statistics [11]. As it was discussed in the previous subsection, when there are highly limited samples available, this kind of “clarity” can not be achieved, especially if we take into consideration the same effects as in the trilateration approach. As the fingerprintig method uses indirectly the same channel characteristics (though in an adaptive manner), for the appropriate performance almost the same density of reference becaons are needed, when only limited samples are available. Moreover, this method also uses more reference Bluetooth beacons, the discovery of which is time demanding. However with the same density of Bluetooth beacons the cell-of-origin [10] method results in a much more robust system. Though it is actually the trivial solution of the positioning task, as the position estimated is exactly the one which is assigned to given beacon, it has the implicit ability to positively adapt the positioning error when the propagation of the radio signal is obstructed, or when a given mobile device has worse receiver sensitivity. As the given covarage (in direct proportion with the positioning error) of a Bluetooth beacon is limited, the detection will happen only when the user is nearer. Moreover this approach guarantee the best responsivity in the context of traditional Bluetooth. In addition, as the RSSI measurements are not used in this approach, there is no need
Figure 4. Average RSSI values versus distance
When using as little samples as possible the global (i.e. considering all the measured values at a given distance) distribution of RSSI samples are much more informative. As one can see, the distances of 8m and 13m are very hard to be distinguished (Figure 5.). Moreover it is hard to differentiate even the 1m and the 8m positions using little samples.
50
for RSSI availability check and measurement classification methods.
route (Figure 6.) was taken 10 times with an average walking speed. The results show the percentage of the possible 60 (unique) detections on the path.
This way, the result of the design process was an indoor positioning system that makes use of the previously installed passive positioning infrastructure (dual mode Bluetooth beacons), and a mobile software subsystem, the role of which was to report the currently discovered Bluetooth MAC addresses of different beacons, as the beacons can be assigned to any kind of position information in upper software layers.
The system performed overally as expected. However using the Bluetooth Low Energy technology it performed with 100% success ratio, using the traditional Bluetooth it was not overall perfect. Though by increasing the transmission power at the erroneous places (calibration), the system is easily adaptable to better performance (as it is shown on Figure 6.). IV. CONCLUSION In this paper a fine-grained design process was followed to find a general solution for the Bluetooth based positioning task. As the preliminary measurements showed, the RSSI values are highly unreliable in cases when there are limited number of samples available, moreover there are mobile devices, that do not support the measurement of RSSI values. Though in this paper a trivial positioning method was used, it was shown that other positioning methods with the same beacon density are much more exposed to the different radio channel anomalies. ACKNOWLEDGMENT This research has been sponsored by BME-Infokom Innovátor Nonprofit Ltd., http://www.bme-infokom.hu/ REFERENCES [1] [2]
Bluetooth SIG, “Bluetooth Core Specification v4.1”, Dec. 2013. X. X. Z. Zhao, A. Markham, N. Trigoni, Y. Ren, „Does BTLE measure up against WiFi? A comparison of indoor location performance,” in 20th European Wireless Conf., Proc. of European Wireless 2014, Barcelona, Spain, 2014. [3] Zhu Jianyong, et al. „RSSI Based Bluetooth Low Energy Indoor Positioning,” 2014 International Conference on Indoor Positioning and Indoor Navigation, Busan, Korea, October, 2014 [4] D. Scheerens, „Practical indoor localization using bluetooth,” M.S. thesis, University of Twente, Enschede, Netherlands, 2012. [5] T. Fernandez, et al., „Bluetooth Sensor Network Positioning System with Dynamic Calibration,” in 2007. ISWCS 2007. 4th International Symposium on Wireless Communication Systems, 2007. [6] S. Kawakubo, et al., „Wireless network system for indoor human positioning,” in 2006 1st International Symposium on Wireless Pervasive Computing, 2006. [7] E. Akeila, et al., „Bluetooth-based indoor positioning with fuzzy based dynamic calibration,” in TENCON 2010 - 2010 IEEE Region 10 Conference, 2010. [8] A. Hossain, W. S. Soh, „A Comprehensive Study of Bluetooth Signal Parameters for Localization,” in 2007. PIMRC 2007. IEEE 18th Int. Symp. on Personal, Indoor and Mobile Radio Commun., 2007. [9] B. Peterson, R. Baldwin és J. Khaorufeh, „Bluetooth Inquiry Time Characterization and Selection,” IEEE Trans. on Mobile Computing, vol. 5, issue 9., pp. 1173-1187, 2006. [10] R. Mautz, „Indoor Positioning Technologies,” habilitation thesis, ETH Zurich, 2012 [11] X. L. J. S. G. C. Z. Z. Li Zhang, „A Comprehensive Study of Bluetooth Fingerprinting-Based Algorithms for Localization,” in 2013 27th Int. Conf. on Advanced Information Networking and Applications Workshops (WAINA), Barcelona, Spain, 2013. [12] Texas Instruments, “CC256x Bluetooth and dual mode controller,” July, 2012.
Figure 6. Verification Results
III. IMPLEMENTATION A. Experimental system The experimental system was developed using Android based mobile devices, and custom designed Bluetooth beacons, that were built arond the Texas Instruments CC2564 [12] dual mode Bluetooth chip, which had an accurately configurable transmit power level from -35dBm to 12dBm. The CC2564 module was controlled by an Atmel Xmega MCU, using the well specified HCI interface [4]. The mobile software was quite limited in terms of functionality (developed on Android platform), though there were one ineteresting effect which had to be taken into consideration. The given Bluetooth stacks after a given period of time stopped working, possibly due the competitive radio usage in the integrated 802.11x and Bluetooth chips, as the traditional Bluetooth uses high duty cycle frequency hopping when inquiring devices nearby. B. Verification Results For the verification of the system proposed a practical “off the shelf” method was used. The transmit power of the 6 Bluetooth beacon was left at the minimum (around 2-3m range), and while some of them were simply placed in a free power socket, others were installed in floor boxes along a corridor. After that holding two devices in one hand (the mobile devices were simultaneously discovering), the given
51
Szélessávú iránycsatoló tervezése a 0,9-9 Ghz-es sávra Horváth Róbert Szélessávú Hírközlés és Villamosságtan Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Budapest, Magyarország E-mail:
[email protected] Csatolás: -30 dB (+/- 1 dB hullámzás megengedett) Irányítottság: 0,9-3 GHz: > 20 dB 3-9 GHz: > 10 dB A hordozó kiválasztása során a kis veszteséget és a jó hővezető képességet vettem figyelembe, hogy nagy teljesítményű eszközökben is alkalmazható legyen.
Absztrakt—Jelen cikk egy szélessávú iránycsatoló tervezését részletezi számítógépes szimulációs program segítségével. Bemutatásra kerül a csatoló tervezése a Microwave Office áramkör szimulátor programmal, majd a kapott struktúra 3D modellezése és optimalizálása. Az elkészült csatoló mérése hálózat analizátorral elfogadható egyezést mutatott a szimulációs eredményekkel a 0,9-9 GHz-es frekvenciasávban. Kulcsszavak: iránycsatoló, szélessáv, számítógépes szimuláció, CST, stripline
I.
II.
IRÁNYCSATOLÓK FELÉPÍTÉSE
Az iránycsatolók az átvitt jel egy kis százalékát kicsatolva lehetővé teszik a jel tulajdonságainak vizsgálatát, annak megzavarása nélkül. Másik felhasználásuk teljesítményosztóként lehetséges, amikor a két kimenetre a jel egyenlő mértékben szétosztható. A kicsatolt jel felhasználástól függően 3 dB csillapítástól akár 50 dB-ig is terjedhet. A csatolók általában 4 csatlakozással rendelkeznek, egy bemenettel és három kimenettel. Az egyik az átvitt jel kimenete, a másik kettő a csatolt és izolált kimenet. Az izolált kimeneten is általában megjelenik egy alacsony szintű jel, a csatolt és izolált kimeneti jel különbségét hívják irányítottságnak, ez minél nagyobb, annál jobb hatásfokú a csatolás, 15dB irányítottság már jó értéknek számít. A legtöbb ilyen eszköz szimmetrikus felépítésű, megcserélve a ki- és bementet a csatolt és izolált kimenet is felcserélődik. Az 1. ábra illusztrálja a csatoló általános áramköri jelét a teljesítmény irányokkal.
BEVEZETÉS
Napjainkra egyre nagyobb kereslet mutatkozik a szélessávú passzív mikrohullámú eszközök iránt, amelyek a teljes működési frekvenciatartományban azonos tulajdonságokkal rendelkeznek. Ilyen felhasználás lehet például egy kisméretű, széles frekvenciatartományú mérőműszer, ahol nincs hely több iránycsatoló alkalmazására, eggyel kell megoldani a teljes sávban. Az ilyen eszközök tervezése a számítógépes elektromágneses térszimulátor programok fejlődésével nagymértékben leegyszerűsödött, ezzel együtt a pontosabb tervezés eredményeképp a fejlesztési költségek is jelentősen csökkenhetnek. Az itt bemutatott iránycsatolót stripline struktúrára terveztem, ennek előnye a microstrip felépítéssel szemben, hogy nem tudja befolyásolni a kialakuló tereket a környezetében lévő tárgyak, a felépítéséből kifolyólag árnyékolással rendelkezik. Emiatt az árnyékolás miatt az elkészült eszköz köré egy jóval kisebb zárt fémdoboz tervezhető, microstrip esetben figyelni kell a fém tető távolságára a tápvonalaktól. Illetve sokkal jobb irányítottság érhető el, mert a vezetők körüli tér csak egy közegben terjed, a hordozó anyagában. A tervezés három lépésben történt, elsőként az irodalomban fellelhető számítások segítségével meghatároztam a szükséges csatolók tulajdonságait. Ezek alapján készítettem egy modellt a Microwave Office programban és optimalizáltam azt, hogy a tervezett specifikációknak megfeleljen. Utolsó lépésként pedig megépítettem a 3 dimenziós modellt a CST Microwave Studioban és ez alapján elvégeztem a végső finomhangolásokat. Az iránycsatoló célparaméterei: Működési tartomány: 0,9-9 GHz Beiktatási csillapítás: < 0,2 dB (csatolási veszteség nélkül) Bemeneti reflexió: < -15 dB (50 Ω csatlakozások)
1. ábra: Az iránycsatolók áramköri jele és a teljesítményáramlások iránya A csatolást csatolt vonalakkal lehet elérni, ez két párhuzamos tápvonalból áll. Az egyik tápvonalon áthaladó elektromágneses hullám átcsatolódik a másik vonalra az elektromágneses terek kölcsönhatásának következtében és egy ellentétes irányú hullám alakul ki rajta. A csatolás mértékét döntő részben a két tápvonal között lévő távolság befolyásolja, míg a hosszuk a működési frekvenciát. A tápvonalak szélessége főleg az impedanciák illesztése szempontjából
52
fontos. A 2. ábra egy csatolt vonalat illusztrál a jellemző méretek jelölésével és a csatlakozások elnevezéseivel.
III.
MICROWAVE OFFICE MODELL KÉSZÍTÉSE
A kapcsolódó irodalom [8] megmutatja analitikus számításokkal, hogy gyengén csatolt vonalak esetén 5 csatolt vonal sorba kapcsolásával elérhető a kívánt 150%-os sávszélesség. Ezt ideális csatolt vonalak segítségével áramkör szimulátor programban le is ellenőriztem. A tervezett -30 dB csatolásból a (7-8) egyenlet segítségével számolható a szimmetrikus többelemű csatolt vonalak csatolási tényezői, ezekből pedig az impedanciák. N az elemszám, ebben az esetben 5, n pedig 1, 2 és 3. C1, C2 és C3 a 3 csatoló elem csatolási tényezője, ezekre keressük az egyenletek megoldását. A számítás szimmetrikus csatolóra vonatkozik, vagyis a középső elemtől haladva kifelé, mindkét irányban azonosan növekszenek a távolságok a csatolt vonalak között (4. ábra/a).
2. ábra: Csatolt vonal dimenziói és a csatlakozások elnevezései Egyetlen csatolt vonal is iránycsatolónak tekinthető, de ennek a sávszélessége nagyon keskeny. Több csatolt vonal sorba kapcsolásával nagyobb sávszélességek is elérhetőek, a csatolási görbékre a szűrőtervezésnél is ismert karakterisztikák megvalósíthatóak a csatolási együtthatók megfelelő megválasztásával: maximum lapos [1] vagy Csebisev [2]. A csatolt vonalak páros és páratlan módú gerjesztés esetén különböző impedanciákat mutatnak. A két gerjesztési mód a 3. ábra rajzain látható. Az itt megadott kapacitások határozzák meg a páros és páratlan impedanciákat, (1) és (2) segítségével a (3) egyenletnek megfelelően.
(7) Maximum lapos karakterisztika esetén [1]: (8) Az impedanciák számításához szükség van a hordozó tulajdonságaira is, én a Rogers 6035HTC 1,5mm vastag duroid anyagot választottam, ennek a relatív dielektromos állandója 3,5 és nagyon jó hővezető tulajdonságokkal rendelkezik, ez a nagyteljesítményű alkalmazások szempontjából fontos. A kapott csatolási értékekből közelítően számolható a geometria a TXLine program segítségével. A csatolót stripline csatolt vonal elemekből megépítettem a Microwave Officeban (MWO). Ez a szoftver egy áramkör szimulátor program, ami a beépített elosztott paraméterű elemekből épített áramkör gyors szimulációjára is képes. Az optimalizácó előtt tettem pár megkötést a geometria egyszerűsítése érdekében. A szakaszok hosszúságát az 5,5 GHz frekvenciának megfelelő hordozóban lévő hullámhossz negyedére állítottam, ez magasabb a sávközépnél, de így biztosan működőképes lesz a kívánt frekvenciatartományban. A csatolt vonalak mindkét tápvonalának szélességét azonosra állítottam, méghozzá 50 Ω impedanciának megfelelő szélességűre (1,7 mm). Egyedül a távolságokat hagytam meg változtathatóra, ez 5 paraméter, amit az MWO beépített optimalizáló eszközének vizsgálnia kell. Az optimális geometriára az optimalizáló algoritmus végül a távolságok nem szimmetrikus elrendezését, hanem lépcsőzetes alakot adott. Ennek oka, hogy ilyen geometriával elérhető a laposabb csatolási karakterisztika és nagyobb sávszélesség is, mert a változó paraméter nagyobb szabadságot ad. A 4. ábra/a felén látható a MWO elosztott paraméteres áramkör rajzolata a számolt geometriával, a 4. ábra/b-n pedig az optimalizált elrendezés, az 5. ábra a szimulált S-paraméterek görbéit mutatja.
3. ábra: Csatolt vonalak páros (bal oldal) és páratlan (jobb oldal) módú gerjesztése. Forrás: [1] (1) (2)
(3) Ebből a két impedanciából számolható a csatolási tényező (4) illetve fordítva is, a csatolási tényezőből számolhatóak a szükséges impedanciák (5) szimmetrikus csatolt vonal esetén. Z0 a csatlakozó hálózat impedanciája. A kapott impedanciák pedig meghatározzák a geometriát is, a számítások a [3]-ban megtalálhatóak. (4) (5) (6) A páros és páratlan módusok fázissebessége, ha jelentősen eltér az az irányítottság romlásában jelentkezik. Microstrip struktúránál ez nagyobb mértékben befolyásol, de léteznek módszerek ennek javítására, például a csatoló tápvonalak éleinek geometriáját módosítva alakítják a páros és páratlan módushoz tartozó effektív elektromos hosszakat [6] [7].
4. ábra: (a) Geometria az eredeti távolságokkal (b) Geometria az optimalizált távolságokkal Az eredményekből látszik, hogy a csatolás 2 dB
53
SMA-szerű koaxiális csatlakozást illesztettem, a valóság lehető legpontosabb modellezése érdekében, mert a végső eszközök csatlakozói is SMA csatlakozók lesznek. A térszimuláció használata során már csak apróbb finomhangolásokra volt szükség, a korábbi optimalizációk közel megfelelő eredményt adtak. A szimuláció futása után több zavaró rezonancia is megjelent a kapott görbéken, aminek oka a nem megfelelő árnyékolása a portoknak és a tápvonalaknak, nem kívánt csatolás jött létre köztük. Ezt kiküszöbölendő a csatlakozások után CPW struktúrára rajzoltam át a tápvonalat és a csatoló struktúra köré is árnyékolást szerkesztettem, ahol fémezett furatokkal össze van kötve a stripline struktúra aljával és tetejével. A gyártás költségeinek csökkentése érdekében nem többrétegű áramköri megoldással készítettük el a csatolót, hanem két kétoldalas áramköri lapként. Emiatt a csatlakozások szerelése is egyszerűbben megoldható, a felső rétegen egy bevágást készítve a csatlakozók forrasztása megoldható. A megváltozott viszonyok miatt az itt lévő tápvonal szélességet optimalizálni kellett az 50 Ω-hoz való megfelelő illesztés elérése érdekében.
hullámzással teljesíti a -30 dB-es követelményt. Mind a reflexió és az irányítottság is, a nagyon jónak számító -40 dB körüli értéken van. Ezzel a módszerrel minimális számú paraméter változtatásával tervezhető iránycsatoló közel tetszőleges csatolási értékkel, az optimalizáló a kisszámú változó miatt gyorsan eljut az optimalizálási feltételek teljesítéséig. A csatoló szakaszok hosszának változtatásával a működési frekvencia változtatható, így rövid idő alatt tetszőleges iránycsatolót tervezhetünk.
5. ábra: Az optimális geometriával kapott S-paraméterek [dB] IV.
3D MODELLEZÉS
A modellezést a Computer Simulation Tools (CST) Design Studio és Microwave Studio programokkal végeztem. A Design Studio hasonló a MWO-hoz, elosztott paraméterű áramköri elemeket szimulálhatunk modulonként, ezekből megépítettem a csatoló modelljét. Az előbbi optimalizáló eszközök rövid idő alatt megfelelő eredményt adtak. Ezután a hosszú idejű térszimuálciók során csak apróbb módosításokat kellett elvégezni, ez nagyban csökkentette a tervezési időt. A modellbe itt belekerültek a végső modul csatlakozó tápvonalai is. A 4 kivezetésből kettő egymással szembe néz, ez lesz a fő jelút és a köztük lévő kapcsolat egy 50 Ω-os tápvonal. A csatolt és izolált kimenet egy oldalon helyezkedik el, merőleges az előbbi két csatlakozásra. A tápvonalba itt 90°-os törést kell vinni a csatlakozásokhoz. A törés során a [8] irodalomban található módszert alkalmaztam, amiben kísérletekkel megmutatták, hogy a minimális reflexió akkor lesz a törés következtében, ha a 45°-os él hossza az 1,81-szerese a csatlakozó tápvonalak szélességének. A 6. ábra az így kapott geometriát ábrázolja.
7. ábra: Az iránycsatoló 3D modellje A végső modellt a felső hordozó nélkül a 7. ábra mutatja, a szimulációs eredményt a 8. ábra illusztrálja. A -25 dB alatti reflexió, és a 20 dB alatti irányítottság bőven belül van a specifikációknak, és a csatolás +/-1,5 dB-es hullámossága is elfogadható. A működési tartomány szélesebb, mint a Design Studio vagy MWO esetében, mert a csatolás már a 90°-os törésnél is létrejön, ez növeli a csatoló effektív hosszát. A korábbi két program ezt a hatást nem volt képes szimulálni.
6. ábra: A 3D modell rajzolata A szimuláció 2dB eltérést mutatott a csatolásban az MWOhoz képest, ezért a Design Studioban is lefuttattam egy optimalizációt, ezt kompenzáló feltételekkel. A tápvonalak szélessége mindenhol megegyezik, a csatolt vonalaknál és a csatlakozások tápvonalainál is. A kapott irányítottság most is bőven a kívánt érték alatt volt. A Design Studio egyik hasznos funkciója, hogy automatikusan el tudja készíteni a megépített elosztott paraméterű áramkör 3D-s modelljét a megfelelő környezeti beállítások után. A modellhez szerkesztettem egy fém dobozt is, és mindegyik kivezetéshez egy rövid 50 Ω-os
8. ábra: CST szimuláció eredménye [dB] V.
ÖSSZESZERELÉS ÉS MÉRÉSI EREDMÉNYEK
Elsőként az alsó hordozóra forrasztottuk a csatlakozókat, majd a felső hordozót pontosan ráhelyezve azt forrasztással rögzítettük, így kialakult a stripline struktúra. Erre a rögzítésre azért volt szükség, mert a szimpla rögzítő eszközökkel való összenyomás nem eredményezett megfelelő kapcsolatot a föld rétegek között. A csatlakozások fölött a felső föld felületet kiegészítettük, és hálózat analizátorral megmértük a 0,5-9,5
54
GHz-es tartományban. A mért eredményeket a 9. ábra görbéi illusztrálják, a szaggatott görbék a szimulációs eredmények.
VI.
ÖSSZEGZÉS
A cikkben bemutatásra került egy módszer, amivel egyszerűen megtervezhető egy szélessávú iránycsatoló. A módszerrel a tervezési idő töredékére csökkenthető áramköri szimulátor programban való optimalizálással, így az időigényes térszimulátor programban már csak finomítani kell a geometrián. A módszerrel széles határok között tervezhető csatoló, -10dB vagy alacsonyabb csatolással illetve 150%-os relatív sávszélességgel. A gyártást két darab kétoldalas nyák lap összenyomásával oldottuk meg költségcsökkentés miatt, az összeszerelést könnyíteni lehet többrétegű nyák gyártási technológiával. A mérés jó egyezéssel hozta a kívánt csatolást, egyedül az irányítottság mutatott a szimulációtól eltérő eredményeket, ennek oka az összeszerelésnél keletkezett szabálytalanságok, a lehetséges javításra javaslatot tettem.
9. ábra: Mérési és szimulációs eredmények [dB] A mérési eredményekben megfigyelhető pár rezonanciacsúcs, ezek a nem elég pontos összeszerelésnek tudhatóak be. A forrasztás során előfordulhatott, hogy nem lett teljesen összefüggő a föld felületek kapcsolata, emiatt nem kívánt szivárgások alakultak ki magasabb frekvenciákon. A jövőben ennek kiküszöbölése többrétegű nyák technológiával lehetséges, ahol gyártás során pontosan összeillesztik a rétegeket. A mért csatolás nagy pontossággal hozza a szimuláció eredményét (kinagyítva a 10. ábra görbéin). A rezonanciáktól eltekintve a maximum és minimum értéke között a 0,9-9 GHzes sávban 3,5 dB a különbség.
11. ábra: Az elkészült iránycsatoló alsó rétege a csatlakozók szerelése után KÖSZÖNETNYÍLVÁNÍTÁS Szeretném megköszönni Fehér Gábornak és Jakab Lászlónak a segítségüket és támogatásukat a tervezés és a mérés során, illetve az OMTLAB Research Kft. közreműködését, ami nélkül ez a projekt nem jöhetett volna létre.
10. ábra: Mért és szimulált csatolás [dB] A reflexiók átlagosan 10 dB-el elmaradnak a szimulált értéktől, ennek oka a csatlakozás és hullámvezető átmenet, de még mindig a specifikációknak megfelelő -15 dB alatti a teljes sávban. A legnagyobb különbség az irányítottságban jelentkezett, a mért érték messze elmarad a kívánttól, egészen 2 GHz-ig 15 dB feletti, majd folyamatosan tovább emelkedve 9 GHz-nél már eléri a csatolás szintjét. A magyarázat erre a korábban is említett módusok eltérő sebessége lehet. A szimulációban a hordozók közötti teret levegő tölti ki ott, ahol nincs réz réteg. Az összeszerelés miatt ebbe a rétegbe kerülhetett folyasztószer a forrasztás következményeként, illetve az erős összenyomás miatt ez a levegőréteg sok helyen meg is szűnhetett a hordozó nagyfokú hajlékonysága miatt. Ez az anyag nagyon puha, könnyen hajlítható, keménygumi-szerű anyag. Ezek befolyásolják a terjedési viszonyokat és így a szimulációban megépítettől eltérő belső struktúra alakult ki. Megoldás a javításra a két módus sebesség viszonyának a módosítása. Ha lyukakat vágunk az anyagba a csatolók közötti rés helyén, módosítjuk ott az anyagösszetételt, így a terjedési sebességeket is. Szimulációs ellenőrzés után elmondható, hogy így az irányítottság növelhető.
HIVATKOZÁSOK [1] [2]
[3] [4] [5]
[6]
[7] [8]
55
Pozar, David M. Microwave engineering. John Wiley & Sons, 2009. Cristal, E. G., and L. Young. "Theory and tables of optimum symmetrical TEM-mode coupled-transmission-line directional couplers." Microwave Theory and Techniques, IEEE Transactions on 13.5 (1965): 544-558. Garg, Ramesh, Inder Bahl, and Maurizio Bozzi. Microstrip lines and slotlines. Artech house, 2013. Mongia, Rajesh K., et al. RF and microwave coupled-line circuits. Artech house, 2007. Rida, A., Margomenos, A., & Tentzeris, M. M. (2009, May). Wideband mm-wave compensated 90 bends for grounded coplanar waveguide and microstrip transmission lines on flexible LCP substrates. In Electronic Components and Technology Conference, 2009. ECTC 2009. 59th (pp. 2000-2003). IEEE. Muller, J., & Jacob, A. F. (2010, May). Advanced characterization and design of compensated high directivity quadrature coupler. In Microwave Symposium Digest (MTT), 2010 IEEE MTT-S International (pp. 724-727). IEEE. Zhou, M. W., Li, L., & Yin, Q. Y. (2007). Optimal Model for Wiggly Coupled Microstrips in Directional Coupler and Schiffman Phase Shifter. PIERS Online, 3(2), 32-135. Young, L. (1963, February). The analytical equivalence of TEM-mode directional couplers and transmission-line stepped-impedance filters. In Proceedings of the Institution of Electrical Engineers (Vol. 110, No. 2, pp. 275-281). IET Digital Library
SMOG-1 Els˝odleges Energiaellátó Rendszere Herman Tibor
Dudás Levente
Budapesti M˝uszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Szélessávú Hírközlés és Villamosságtan Tanszék E-mail:
[email protected]
tanársegéd Budapesti M˝uszaki és Gazdaságtudományi Egyetem Szélessávú Hírközlés és Villamosságtan Tanszék E-mail:
[email protected]
Kivonat—A SMOG-1 egy PocketQube méretu˝ (5 cm élhosszúságú kocka) muhold, ˝ amely a Muszaki ˝ Egyetemen gépész- és villamosmérnök hallgatók, illetve oktatók közremuködésével ˝ készül. A fedélzetre kerül˝o spektrumanalizátor az ember által épített antennák kisugárzott elektromágneses szennyezését méri a Föld körül a földfelszíni musorszórók ˝ (DVB-T) frekvenciasávjában, azaz 430 MHz és 860 MHz között. A kis térfogat, illetve az alacsony tömeg miatt a fedélzetre csak kis teljesítményu˝ telemetriarendszer kiépítése lehetséges. A muhold ˝ életben maradása nagyban függ a rendelkezésre álló energiától, így a folyamatos, megbízható energiaforrás lételeme az eszköznek, anélkül egy alrendszer sem muködhetne. ˝ Az energia biztosításáért az Energiaellátó Rendszer a felel˝os, cikkemben ennek tervezését, építését és mérését mutatom be. A napelem a Napból érkez˝o sugárzott elektromágneses energiát vezetett elektromos energiává alakítja, a beérkez˝o teljesítményt maximalizálja a cellákhoz közel elhelyezked˝o energiaátalakító, ami az akkumulátort tölti, optimalizált hatásfokkal. Az akkumulátorból kivett teljesítményt az fedélzeti elektronika számára szükséges stabil feszültségszintre a Másodlagos Energiaellátó Rendszer alakítja át.
1. ábra. A m˝uholdon a tesztelés során használt napelem cellák
I. B EVEZETÉS Az Energiaellátó Rendszer feladata több elemb˝ol tev˝odik össze, mint pl. az energia kinyerése a napelemb˝ol, a kivett teljesítmény maximalizálása, az akkumulátor töltése, stabil tápfeszültség biztosítása, ill. túlfeszültség- és túláramvédelem. A bevezetésben ezeket ismertetem röviden.
2. ábra. A napelem U-I és U-P karakterisztikája [1]
I-A. Napelemek Az általam használt napelem cellákból készült oldallemez az 1. ábrán látható. A m˝uholdon használt háromréteg˝u napelemek hatásfoka az u˝ rben 28 % körüli, míg a Földön csupán 16 %, mivel a fény spektruma nem egyezik meg e két helyen. Ez az érték az öregedéssel csökken, ezért különösen fontos, hogy az energiaátalakítók hatásfoka maximalizálva legyen. Az Els˝odleges Energiaellátó Rendszer feladata a napelem cellákból beérkez˝o teljesítmény átalakítása oly módon, hogy egy akkumulátort tölteni tudjon, ill. az akkumulátor meghibásodása esetén a rendszert ellássa elegend˝o teljesítménnyel. A napelem cellák jellemz˝oje a hatásfok mellett, az üresjárási feszültség (Uu¨j ) és a rövidzárási áram (Irz ). A napelemb˝ol kivehet˝o teljesítmény pedig P < Uu¨j Irz . A napelem U-I karakterisztikájáról (2. ábra) nagyjából sejthet˝o, de tapasztalati úton meghatározható, hogy a maximális teljesítmény˝u munkapontja az üresjárási feszültség 80-90 %-a körül van. Mivel több cellát használunk, ezért el kell dönteni, hogy azokat sorosan vagy párhuzamosan kötjük-e. Soros kapcsolás
esetén, ha az egyik cella meghibásodik, akkor vagy szakadásként látszódik a bemenet vagy – ha rövidzárba megy át – a többi cella egy cellányi feszültséggel kevesebbr˝ol, de tovább m˝uködik. Párhuzamos kötés esetén ennek az ellentettje történik hiba esetén: ha egy cella rövidzárba megy át, akkor az a bemenetet földeli, ha szakadásba megy át, akkor a többi cella továbbra is tud szolgáltatni teljesítményt. A párhuzamos kapcsolás el˝onye abban rejlik, hogy így a cellák árama összeadódik és a feszültséget a legalacsonyabb üresjárási feszültséggel rendelkez˝o cella határozza meg és a bekötés is egyszer˝u. Soros kapcsolás esetén a bekötés túl bonyolult lenne, ezért a párhuzamos kapcsolás mellett döntöttem. A m˝uholdhoz épített 8 cellás napelemtábla üresjárási feszültsége és rövidzárási árama Uu¨j = 2, 1V , Irz = 200 mA, amib˝ol a maximális teljesítmény˝u munkaponti feszültség 1,681,89 V körülire adódik. A pontos érték nem meghatározott, több dolog befolyásolja azt: a megvilágítás szöge, a h˝omérséklet és a bees˝o fény spektruma is [2].
56
3. ábra. Szinkron egyenirányítós feszültségnövel˝o kapcsolás
4. ábra. Az SPV1040 alkalmazása
I-B. Maximum Power Point Tracking (MPPT) Az MPPT olyan eljárás, amely egy generátorból kivehet˝o energiát maximalizálja. Erre létezik több különböz˝o algoritmus, mint pl. a Perturb & Observe, Incremental Conductance, stb. Ezek „hegymászó” stratégiák, ami azt jelenti, hogy a vezérlés a feszültség változtatása mellett figyeli a kivett teljesítményt és addig folytatja egy irányba a változtatást, amíg n˝o a teljesítmény, különben a másik irányba kezd el korrigálni [3]. A m˝uholdon található eszközök tápfeszültsége 3,3 V, ezért ezt a stabil és védett feszültségszintet kell el˝oállítani. Mivel a napelem feszültsége alacsonyabb, mint a szükséges tápfeszültség, ill. az akkumulátor feszültsége feltöltött állapotban, a rendelkezésre álló teljesítmény mW nagyságrend˝u és minél nagyobb hatásfok elérése a cél, ezért feszültségnövel˝o, szinkron egyenirányítós (3. ábra) tápellátás az optimális megoldás [4]. A méretbeli korlátozások miatt olyan integrált áramkört keresek, amely elvégzi az MPPT feladatát is. I-C. Akkumulátor töltés A m˝uholdra beérkez˝o többletenergiát egy Lítium-Ion akkumulátorban tároljuk el, melyet árammal lehet tölteni. Ez úgy történik, hogy amíg az akkumulátor el nem éri maximális feszültségét (4,2 V), addig áramgenerátorosan, maximális árammal lehet tölteni, felette már korlátozni kell a tölt˝oáramkör feszültségét, különben visszafordíthatatlan kémiai folyamatok indulnak meg a Li-Ion cellában [5]. I-D. Feszültségstabilizálás Az akkumulátorról m˝uköd˝o alrendszerek számára stabil, 3,3 V-os tápfeszültséget egy feszültségcsökkent˝o kapcsolással kell biztosítani, mivel ez az érték az akkumulátor alsó tartományában van. A feladatot megoldó elektronikát Másodlagos Energiaellátó Rendszernek nevezzük, melynek további feladatai többek közt az alrendszerek tápellátásának vezérlése és a túlfeszültség- és túláramvédelem is. I-E. Redundancia Ahhoz, hogy a m˝uhold biztonságosan m˝uködhessen, a létfontosságú elemeket redundánsan kell tervezni úgy, hogy egy pont meghibásodás ellen védve legyenek. Ez azt jelenti, hogy ha egyetlen alkatrész meghibásodik (átmegy szakadásba vagy rövidzárba), a m˝uholdnak továbbra is m˝uköd˝oképesnek kell lennie. Ezt a redundanciát a tölt˝oáramkörök esetében a
hat oldalra feltett, egymástól függetlenül m˝uköd˝o áramkörrel oldottam meg. Az egyetlen alkatrész, aminek a redundanciáját nem tudjuk megoldani – a rendelkezésre álló hely és a probléma bonyolultsága miatt – az akkumulátor, így ebb˝ol csak egy kerül a fedélzetre. II. T ERVEZÉS II-A. MPPT áramkör Az MPPT funkció ellátására több lehet˝oség ismert: az egyik a mikrokontroller vagy FPGA alapú, felhasználó által megírt algoritmus használata, amely a rendelkezésre álló hely sz˝ukössége miatt esetemben nem célravezet˝o megoldás. A másik lehet˝oség egy integrált áramkör használata, melyet erre a funkcióra terveztek és jó hatásfokkal képes elvégezni az energiaátalakítást, kis elfoglalt térfogat mellett. A mikroelektronikai gyártók több ilyen IC-t kínálnak, viszont legtöbb esetben watt-kilowatt nagyságrendbe esik az alkalmazott teljesítmény, ezért ezek az áramkörök méretükb˝ol, valamint a kis teljesítmény˝u hatásfokukból adódóan nem alkalmasak a feladatra. A m˝uhold felületére beérkez˝o napenergiából kivehet˝o teljesítmény néhányszor 100 mW nagyságrend˝u. A mérések során – hatásfoka és könny˝u alkalmazhatósága miatt – az SPV1040 típust választottam. Ennek az eszköznek a hatásfoka a gyártó szerint elérheti a 95 %-ot is, de tapasztalataim szerint az ilyen értékeket fenntartásokkal érdemes kezelni. Az IC 0,3 V-tól 5,5 V bemen˝o feszültségig képes m˝uködni, ami azért érdekes, mert a napelemek a m˝uhold forgása közben változó munkaponti feszültséggel tudnak dolgozni, amit az IC képes követni egészen alacsony megvilágítás mellett is. A kapcsoló frekvenciája 100 kHz, a kimeneti áramot a beépített árammér˝ovel lehet szabályozni, küls˝o söntellenálláson keresztül. Az IC MPPT algoritmusa (Perturb & Observe) kikapcsol, ha a söntellenálláson es˝o feszültség meghaladja az 50 mV-ot. Mivel a cél az akkumulátor töltése, ezért ezt a funkciót nem használtam, az árammér˝o lábait rövidre zártam, mert a napelemekb˝ol kivehet˝o maximális teljesítmény nem teheti tönkre az akkumulátort. A gyártó által kiadott referencia kapcsolás, melyb˝ol kiindultam a 4. ábrán látható. A maximális kimeneti feszültséget feszültségvisszacsatolással lehet korlátozni. Az erre vonatkozó ellenállás értékek az 1. egyenlet szerint alakulnak, ahol R1 és R2 a 4. ábra szerinti ellenállások [6]. Azért, hogy a visszacsatolt hibajel ne legyen túl zajos, általános ökölszabályként a
57
feszültségosztó áramát néhányszor 10 µA nagyságrend˝uvé választottam. Ez nagyságrendileg 10 kΩ-os ered˝o ellenállást eredményez. A pontos értéket a végleges akkumulátor kiválasztásakor lehet megadni. VOU T max R2 = −1 R3 1, 25
(1)
II-B. Energiatároló elemek méretezése, kiválasztása A feszültség-átalakító áramkörök fontos része a bemeneti és kimeneti kondenzátor és az induktivitás. Ezen alkatrészek min˝osége nagyban befolyásolja az eszköz hatásfokát, ezért minél jobbat érdemes használni, mivel u˝ reszközr˝ol van szó. A jó induktivitás jellemz˝oen vasmagos, alacsony az egyenáramú ellenállása, és sajátfrekvenciája legalább egy nagyságrenddel az IC által használt kapcsolófrekvencia fölött van. Ezen kívül kis méret˝unek kell lennie, azonban a kisebb mérettel a telít˝odési áram is csökken, ezért kompromisszumot kellett kötnöm. A konverter m˝uködése az induktivitáson átfolyó áram hullámformájából adódóan kétféle lehet: folytonos- vagy szaggatott áramú. Az utóbbi elkerülend˝o, mivel csökkenti a hatásfokot, azonban a m˝uhold forgása miatt mindkét üzemmód el˝ofordul. A folytonos üzemmódhoz az induktivitás értékét méretezni kell, Pbe = 0, 3 W és Uki = 4 V értékekkel felülr˝ol becsülve a beérkez˝o teljesítményt a 2. egyenlet szerint, ahol D a kitöltési tényez˝o, fk a kapcsoló frekvencia. A függvény D = 0, 5 esetén maximális, így ezzel alulról becsülöm az induktivitást, mert így csak alacsony megvilágítási szint esetén lesz szaggatott az áram. Az így számolt érték 16,7 µH [7]. Természetesen minél nagyobb az induktivitás, annál jobb a hatásfok, azonban a méretbeli korlátozás miatt nem lehet bármekkora ez az érték, a DC ellenállás növekedése miatti hatásfok csökkenésr˝ol nem is beszélve. L>
2 (D(1 − D))2 Uki Pbe 2fk
(2)
A kondenzátorok kiválasztásánál figyelni kell a dielektrikum min˝oségére, mert ez meghatározza a kapacitás ekvivalens soros ellenállását (ESR). Minél kisebb az ESR, annál tovább tartja a feltöltött állapotbeli feszültséget a kondenzátor. Ez alapján a választásom az X7R dielektrikumra esett. Fontos szempont, hogy az u˝ rben nem használható akármilyen anyagból készült alkatrész. A kapacitások esetében ez lekorlátozódik a kerámia kondenzátorokra, mivel a tantál és elektrolit kondenzátorok vákuumban kig˝ozölögnek és elveszítik kapacitásukat. Az induktivitás és a hermetikusan zárt IC-k esetében ilyen problémák nem merülnek fel. Ezen kívül a méretet és a kapacitás értéket is figyelembe kell venni, a 3. egyenlet szerint. 250 mV megengedett feszültséghullámosság mellett ez 80 µF-ra adódik [7]. A legnagyobb, még elfogadható méret˝u (1206-os) kapacitás, amit találtam 22 µF-os, amib˝ol négyet párhuzamosan kötve használtam. Cki ≥
Irz f · Uki,hullamzas
(3)
II-C. Mér˝orendszer Mivel a m˝uholdhoz m˝uködés közben a távolságból és sebességb˝ol adódó okok miatt nem férünk hozzá közvetlenül, ezért egy telemetriarendszert terveztem a tápegységhez. Ennek az a feladata, hogy mérje a be- és kimeneti feszültségeket és áramokat, a napelemoldal h˝omérsékletét a lemez hátoldalán, illetve egy fotodiódával vizsgálom azt is, hogy az adott oldalt éppen süti-e a Nap. A központi fedélzeti számítógéppel a kommunikációt – az adatok kis mennyiségéb˝ol kiindulva – minél egyszer˝ubb módon és minél kevesebb vezetékkel érdemes megoldani a hibalehet˝oségek csökkentése érdekében. A legegyszer˝ubb, csupán két vezetéket alkalmazó protokoll a 1-Wire, amihez csak adat és föld vezetékek szükségesek. Ez a protokoll mesterszolga üzemmódú: a mester minden bit kezdetekor jelzést küld a szolgának úgy, hogy az adat lábat logikai 0-ba állítja egy bizonyos ideig. Ha éppen írási fázis van, akkor a mester az adatnak megfelel˝o szintre állítja a vonalat, olvasás esetén pedig megnézi egy rövid várakozási id˝o után, hogy milyen logikai szintet lát a vezetéken. A várakozási id˝ok µs nagyságrend˝uek, így az adatátviteli sebesség maximum néhány ezer b/s lehet [8]. A mér˝orendszer feladatainak elvégzéséhez ma már elegend˝o egy apró, 3x3 mm-en elfér˝o mikrokontrollert használni. Az általam kiválasztott MCU a C8051F972, amit a Silicon Labs gyárt. A mérend˝o feszültségeket a kontroller ADC bemeneteire kötöttem, az áramokat pedig egy fix er˝osítés˝u m˝uveleti er˝osít˝os árammér˝o IC kimeneti feszültségével mérem. A konverter egyenáramú jellegéb˝ol kiindulva várhatóan a mért értékek lassan változnak. Ha a mérés helye topológiailag nincs azonos helyen a mérend˝o értékkel, a hozzávezetéseken igen sok – pl. az IC kapcsolóüzem˝u m˝uködéséb˝ol adódó – zajt összeszedhet, ezért a mérés helyén, a mikrokontroller lábaihoz közel egy alulátereszt˝o sz˝ur˝on érdemes sz˝urni a jelet. A m˝uhold forgáforgási sebességgel felülr˝ol sát figyelembe véve, 10 f ordulat sec becsülve, a sz˝ur˝onek ennél nagyjából két nagyságrenddel nagyobbnak kell lennie, hogy tudja követni ezt a változást, így a sz˝ur˝o határfrekvenciáját 1 kHz-re választottam, ami a 100 kHz-es kapcsoló frekvenciát már elnyomja. Az analóg-digitális átalakításhoz szükséges egy stabil referenciafeszültség. Mivel a kontrollert az áramgenerátoros jelleg˝u MPPT IC kimenetér˝ol táplálom – melynek feszültsége biztosan nem stabil – ezért referenciának nem használható. Ezt egy precíziós feszültségreferencia dióda segítségével oldottam meg, mely elegend˝o nyitó irányú áram esetén 0,1 % toleranciával tartja a névleges feszültségét. A feladatra a 2,5 Vos LM4040-et használom. Mivel az akkumulátor feszültsége üzemi állapotban 2,5 V felett van és az ADC maximum a referenciafeszültséggel megegyez˝o feszültséget tud mérni, ezért az akkumulátor feszültséget le kellett osztanom úgy, hogy feltöltött esetben is beleessen a mérési tartományba. Ehhez egy 1/2-es osztót használtam. III. Á RAMKÖRTERVEZÉS , - ÉPÍTÉS ÉS - ÉLESZTÉS Az els˝o teszt áramkörök gyártása után megterveztem a m˝uhold oldallemezére a kapcsolást. A vázszerkezet emeletes
58
5. ábra. A legyártott NYÁK
7. ábra. Az Ukapcs (kék), Uki (sárga) IV. T OVÁBBI CÉLOK A következ˝o lépés egy szimulációs környezet megépítése lesz, melynek feladata még inkább megközelíteni az u˝ rbéli környezetet. Els˝o sorban a m˝uhold forgásából adódó tápfeszültség ingadozás vizsgálata, ill. az oldalak megvilágításának mérése lesz a feladatom. Meg kell határoznom, hogy milyen forgási sebesség felett nem képes már beindulni annyi id˝ore, hogy elvégezze a mérést és elküldje a fedélzeti számítógépnek. A forgatáshoz szükséges egy vezérelhet˝o motor, pl. egy léptet˝omotor, illetve ahhoz egy meghajtó áramkör, melynek élesztését a cikk írásának idejében végeztem. A megvilágításhoz a Naphoz hasonló teljesítménys˝ur˝uséggel rendelkez˝o m˝unapot fogok használni. További feladataim között szerepel a h˝okamrában, illetve vákuum kamrában végzett mérés, valamint a rázás teszt, ami a hordozórakéta kilövésekor fellép˝o rázkódást szimulálja.
6. ábra. Felvett- és leadott teljesítmény és a hatásfok
kiviteléb˝ol adódóan figyelni kellett a magas alkatrészek elhelyezésére, nehogy azok hozzáérjenek a köztes lemezekhez, ezzel zárlatot okozva. Az elkészült NYÁK az 5. ábrán látható. Ezt a mérnöki példányt még úgy terveztem meg, hogy egy oldalon legyen csak vezetékezés, ugyanis a gyártás vasalásos módszerrel történt, ezért viákat nem tudtam használni. A kész tápegység m˝uködését m˝unappal való megvilágítás mellett a 6. ábra mutatja. A narancssárga jelalak a bemen˝o(254 mW), a lila a kimen˝o (212 mW) teljesítményt, a piros pedig a hatásfokot mutatja átlagolva, utóbbi 83,7 %. A 7. ábra az alsó kapcsoló állapotát és a kimeneti feszültséget mutatja. A kapcsoló kitöltési tényez˝oje határozza meg a kimeneti feszültséget, esetemben 63 %. Ezek alapján elmondhatom, hogy a sorosan beiktatott elemeken eldisszipált teljesítménnyel együtt is jó hatásfokkal m˝uködik a tápegység. Alaposabb, különböz˝o paraméterekkel vizsgált méréseket az elkövetkez˝o id˝oszakban fogok végezni. A telemetriarendszer élesztése után kipróbáltam, hogy valóságh˝ubb környezetben is m˝uködik-e. A teljes modult önmagára hagytam, úgy, hogy a mikrokontroller a napelemb˝ol nyert energiából m˝uködjön. A kísérlet sikeresnek bizonyult, ugyanis az „OBC” megkapta a mérési eredményeket és a földi állomás fogadta a csomagokat, melyekben megtalálható volt a mért adat. Az így végzett mérések segítségével a jöv˝oben könnyen információhoz juthatok a konverter m˝uködésével kapcsolatban, különböz˝o körülmények között.
V. Ö SSZEFOGLALÁS Cikkemben röviden bemutattam a SMOG-1 PocketQube méret˝u, hallgatók és oktatók által épített m˝uhold feladatát és felépítését, specifikáltam az általam elvégzend˝o feladatot és az abba tartozó részfeladatokat. Ismertettem a kritériumokat és tervezési szempontokat, melyek alapján megterveztem a m˝uhold Els˝odleges Energiaellátó Rendszerét, illetve paramétereinek mérésére szolgáló mér˝orendszert. Megépítettem és felélesztettem a már véglegesnek mondható oldallemezre általam gyártott NYÁK-ot, melynek programozását is elvégeztem. Megmértem az áramkör által felvett és leadott teljesítményt és a konverter hatásfokát. A mérési adatokat rögzítettem és elküldtem a fedélzeti számítógépnek, ami már képes rádiós kapcsolaton keresztül elküldeni a földi állomásnak a fogadott adatokat. Mindezt kipróbáltam úgy is, hogy a tápellátást a rendszer már csupán a napelemekb˝ol kapja. H IVATKOZÁSOK [1] Jun-Hua Chiang; Bin-Da Liu; Shih-Ming Chen; Hong-Tzer Yang, "A low supply voltage mixed-signal maximum power point tracking controller for photovoltaic power system", System-on-Chip Conference (SOCC), 2014 27th IEEE International , vol., no., pp.125,129, 2-5 Sept. 2014 [2] A napelemek tulajdonságai, elérés dátuma 2015.05.03.: http://energy.gov/eere/energybasics/articles/photovoltaic-cell-conversionefficiency-basics [3] Cikk a napelemes akkumuátor töltésr˝ol, elérés dátuma 2015.05.03.: http://www.digikey.com/en/articles/techzone/2011/oct/designing-a-highefficiency-solar-power-battery-charger
59
[4] Kimball, J.W.; Flowers, T.L.; Chapman, P.L., "Issues with low-inputvoltage boost converter design," Power Electronics Specialists Conference, 2004. PESC 04. 2004 IEEE 35th Annual , vol.3, no., pp.2152,2156 Vol.3, 20-25 June 2004 [5] Cikk a LiIon akkumulátorok töltésér˝ol, elérés dátuma 2015.05.03.: http://batteryuniversity.com/learn/article/charging_lithium_ion_batteries [6] Az SPV1040 adatlapja, elérés dátuma 2015.05.03.: http://www.st.com/st-web-ui/static/active/en/resource/technical/ document/datasheet/CD00287506.pdf [7] Az SPV1040 application note-ja, elérés dátuma 2015.05.03.: http://st.com/web/en/resource/technical/document/ application_note/CD00292052.pdf [8] Cikk a OneWire protokollról, elérés dátuma 2015.05.03.: http://www.maximintegrated.com/en/products/1-wire/flash/overview/
60
T¨obbcsatorn´as Passz´ıv Radar Vev˝o Platform Pet˝o Tam´as Mikrohull´am´u T´av´erz´ekel´es Laborat´orium Sz´eless´av´u H´ırk¨ozl´es e´ s Villamoss´agtan Tansz´ek Budapesti M˝uszaki e´ s Gazdas´agtudom´anyi Egyetem Budapest, Magyarorsz´ag e-mail:
[email protected]
Kivonat—
A passz´ıv radar rendszerek k´epesek a k¨ornyezetben m´ar eleve megl´ev˝o jeleket kihaszn´alni c´elt´argyak detekt´al´as´ara. A felhaszn´alhat´o jelek azonban igen sz´eles sk´al´an mozognak mind frekvenci´aban, mind pedig s´avsz´eless´egben. A gyors e´ s hat´ekony u´ jrakonfigur´al´as k´epess´ege emiatt k¨ul¨on¨osen nagy jelent˝os´eggel b´ır ezen a ter¨uleten. A szoftverr´adi´o-rendszerek elegend˝oen nagy flexibilit´assal rendelkeznek ahhoz, hogy a lehets´eges megvil´ag´ıt´o forr´asokat a k´ıv´ant s´avsz´eless´eggel venni tudj´ak. Szint´en kulcsfontoss´ag´u emellett a koherens t¨obbcsatorn´as m˝uk¨od´es, mivel az elenged˝oen nagy dinamikatartom´any biztos´ıt´as´ahoz nyal´abform´al´asi technik´ak alkalmaz´asa is sz¨uks´eges. Ezeknek a technol´ogi´aknak a kombin´al´asa a jelenlegi passz´ıv radar rendszerek felder´ıt˝o k´epess´eg´et nagym´ert´ekben n¨ovelheti. A cikk egy ezen m´odszereken alapul´o k´ıs´erleti t¨obbcsatorn´as szoftverr´adi´o alap´u vev˝orendszer fejleszt´es´et mutatja be. A platform effekt´ıv m˝uk¨od´ese DVBT (Digit´alis F¨oldfelsz´ıni M˝usorsz´or´as) jelet alkalmaz´o passz´ıv radar tervez´esi e´ s m´er´esi eredm´enyein kereszt¨ul ker¨ul bemutat´asra. Index Terms—passive radar, beamforming, SDR, DVB-T, DPIS
I.
B EVEZET O˝
A passz´ıv radarok a m´ar l´etez˝o r´adi´o forr´asokat haszn´alj´ak ki c´elt´argyak e´ szlel´es´ere. Az eddigi kutat´asok ´ıg´eretes eredm´enyekr˝ol sz´amolnak be a legk¨ul¨onf´el´ebb megvil´ag´ıt´o forr´asok alkalmaz´as´aval u´ gy, mint FM r´adi´o, GSM, LTE, WiFi, WiMAX, DAB, DVB-T jelek. A m˝uk¨od´es koncepci´oja alaposan kivizsg´al´asra ker¨ult a k¨ul¨onf´ele megvil´ag´ıt´o jelek alkalmaz´asa eset´en [5],[4],[6]. Eddigiekben k´esz¨ultek olyan k´ıs´erleti vev˝orendszerek, amelyek a referenciajelek sz´eles sk´al´aj´at felhaszn´alva k´epesek demonstr´alni a szoftverr´adi´o alap´u passz´ıv radarok alapvet˝o koncepci´oj´at[1],[2],[3]. Ugyanakkor ezek olyan modul´aris a´ ltal´anos c´el´u hardverelemekre e´ p´ıtenek, amelyek magas k¨olts´egei megnehez´ıtik a passz´ıv radar technol´ogia sz´elesk¨or˝u elterjed´es´et. A cikkben egy u´ jfajta korszer˝u megk¨ozel´ıt´esen alapul´o t¨obbcsatorn´as passz´ıv radar vev˝orendszer ker¨ul bemutat´asra. A vev˝orendszerben alkalmazott rendszerchip (SoC - System on Chip) architekt´ura a k¨olts´egek nagym´ert´ek˝u cs¨okkent´ese mellett n¨oveli a rendszer integr´alts´ag´at e´ s korszer˝u nagyteljes´ıtm´eny˝u jelfeldolgoz´asi platformot ny´ujt a passz´ıv radarok
igencsak sz´am´ıt´asig´enyes algoritmusai sz´am´ara. A kifejlesztett hardver platform tervez´esi megfontol´asai, fel´ep´ıt´ese e´ s eredm´enyei r´eszletesen ker¨ulnek bemutat´asra. A vev˝orendszer m˝uk¨od´es´enek hat´ekonys´ag´at terepi m´er´eseken kereszt¨ul teszteltem. A bemutatott vev˝oegys´eg tervez´esi megfontol´asai sor´an DVB-T referenciajel haszn´alat´at felt´eteleztem. A demonstr´aci´o sor´an be´all´ıtott param´eterek ugyanakkor igen hat´ekonyan e´ s gyorsan u´ jrakonfigur´alhat´oak k¨osz¨onhet˝oen a flexibilis hardver architekt´ur´anak. A passz´ıv radarok felder´ıt˝o k´epess´egeinek egyik legszignifik´ansabb korl´atoz´o t´enyez˝oje a direkt u´ ton e´ rkez˝o referencia jel a´ ltal okozott zavar´o interferencia.[6]. A legk´ezenfekv˝obb megold´as erre a probl´em´ara a t´erbeli sz˝ur´esi alkalmaz´asa digit´alis nyal´abform´al´asi elj´ar´asokkal e´ s null-hely illeszt´essel [9],[7]. A direkt u´ ton terjed˝o referenciajel elnyom´asa a c´elt´argyakat megfigyel˝o csatorn´akon elengedhetetlen a kell˝oen nagy jel-zaj viszony el´er´es´ehez nagy bisztatikus c´elt´argyt´avols´agok eset´en. Tipikusan ak´ar m´ar n´eh´any km felett is. Az ut´obbi id˝oben sz´amos FM-r´adi´o alap´u nyal´abform´al´ast is alkalmaz´o passz´ıv radar rendszer ker¨ult sikeresen kifejleszt´esre [8]. Ugyanakkor a j´oval nagyobb s´avsz´eless´eggel rendelkez˝o DVB-T alap´u rendszerek m´eg nem kiforrottak. A cikk a kifejlesztett vev˝oplatform fel´ep´ıt´ese mellett bemutatja annak t¨obbcsatorn´as nyal´abform´al´asi k´epess´egeit is DVB-T jelek felhaszn´al´as´aval. II.
´ T ERVEZ E´ SI MEGFONTOL ASOK
Manaps´ag sz´amos kutat´o csoport foglalkozik a Digit´alis F¨oldfelsz´ıni M˝usorsz´or´o jel passz´ıv radarban t¨ort´en˝o felhaszn´al´as´aval. A DVB-T jel ugyanis az el˝ony¨os korrel´aci´os tulajdons´agai mellett viszonylagosan nagy 8 MHz-es s´avsz´eless´egel rendelkezik, amely alkalmaz´as´aval ∆r =
3 108 ms C = ' 18 m 2B 2 8 106 1s
(1)
t´avols´agfelbont´as is el´erhet˝o. A lehets´egesen alkalmazhat´o megvil´ag´ıt´o forr´asok k¨oz¨ul a DVB-T jel relat´ıve nagy s´avsz´eless´eg˝u, ez´ert a rendszer k¨ovetelm´enyeit c´elszer˝u volt laz´an csatolva ehhez a jelhez illeszteni. Megjegyzend˝o ugyanakkor, hogy a vev˝orendszer architektur´alisan enn´el nagyobb val´os idej˝u s´avsz´eless´eg kezel´es´ere is k´epes. A vev˝oegys´eg
61
kAntennakrendszer
a´ ltal kezelend˝o r´adi´ofrekvenci´as jelek emellett igen nagy dinamikatartom´annyal is rendelkeznek, ugyanis a k¨ozvetlen u´ ton e´ rkez˝o direkt jel nagy teljes´ıtm´ennyel a c´elt´argyr´ol reflekt´alt jel pedig nem ritk´an zajszinthez k¨ozeli vagy az alatti teljes´ıtm´eny szinttel rendelkezik. 8 MHz-es jels´avsz´eless´eg eset´en a termikus zajszint
Négy csatornás kADC
(2)
FPGA
,ahol k a Boltzmann-´alland´o, T a rendszer h˝om´ers´eklete, B pedig a jel s´avsz´eless´ege. Egy tipikus DVB-T ad´otorony ezzel szemben n´eh´anyszor 10 kW-os teljes´ıtm´ennyel is sug´aroz. A 3 o¨ sszef¨ugg´est felhaszn´alva egy Pt = 100 kW-os ad´oteljes´ıtm´ennyel sug´arz´o UHF s´avban, f0 = 610 MHz-en u¨ zemel˝o ad´otoronyra (Budapest Sz´echenyi-hegy) 10 km -es t´avols´ag eset´en Pdirekt ' −30 dBm -es jelszintet kapunk. Pdirekt =
Pt λ2 (4π)2 L2
(3)
A dinamikatartom´anybeli k¨ul¨onbs´eg ebben az esetben t¨obb mint 70 dB. A vev˝orendszer anal´og digit´alis konverter´enek teh´at legal´abb ekkora dinamikatartom´annyal kell rendelkezni ahhoz, hogy a vett jeleket minim´alisan terhelje az a´ talak´ıt´asb´ol sz´armaz´o kvant´al´asi zaj. A digit´alis konverzi´ohoz ez´ert legal´abb 12 bit-es a´ talak´ıt´ot haszn´alunk. A bitsz´am n¨ovel´es´evel el´erhet˝o lenne m´eg nagyobb dinamikatartom´any, azonban ez a rendszer adatsebess´eg ig´eny´et is jelent˝osen n¨oveln´e. A vev˝orendszer a´ ltal megk¨ovetelt adatsebess´eg ezek alapj´an 2B 12 bit = 192 Mbit/s egy vev˝ocsatorn´ara. A nyal´abform´al´asi elj´ar´asok haszn´alat´ahoz azonban mindenk´eppen t¨obb csatorn´ara van sz¨uks´eg¨unk. Alapvet˝oen az adatlet¨olt´esi sebess´egek k´ezben tart´asa miatt a tervezett vev˝oegys´eg n´egy k¨ul¨on csatorn´aval rendelkezik. Ahhoz, hogy a rendszer az igen nagy s´avsz´eless´eggel rendelkez˝o referencia jeleket is k´epes legyen inform´aci´oveszt´es n´elk¨ul a´ talak´ıtani az ADC 100 MHz-sebess´eggel vesz mint´akat. III.
˝ ´ P´I T E´ SE V EV ORENDSZER FEL E
A tervezett vev˝oplatform blokkv´azlat´at az 1 a´ bra szeml´elteti, kiemelve a digit´alis adatgy˝ujt˝o r´eszegys´eget. A rendszer ezen fokozata felel ugyanis szoftver alap´u v´etel megval´os´ıt´as´ae´ rt. Az antennarendszerr˝ol e´ rkez˝o t¨obbcsatorn´as RF (Radio Frequency)-jel els˝o l´ep´esben egy front-end egys´egen halad kereszt¨ul, ami lekeveri a digit´alis adatgy˝ujt˝o egys´eg sz´am´ara feldolgozhat´o k¨oz´epfrekvenci´ara a r´adi´ofrekvenci´as jeleket. A k´es˝obbiekben bemutatott k´ıs´erleti m´er´es sor´an egy UHF (Ultra High Frequency) s´avban m˝uk¨od˝o RF egys´eget haszn´altuk fel a DVB-T jelek v´etel´ere. A k´ıs´erleti RF egys´egr˝ol k´esz´ıtett k´ep a 2 a´ br´an l´athat´o. A k¨oz´epfrekvenci´as jelek ezut´an egy n´egy csatorn´as ADC-re ker¨ulnek, amelynek kimenet´en a digit´alis adatok sorosan jelennek meg. A nyers adatok sebess´ege ezen a ponton el´erik a 100 MHz 12 bit 4 = 4.8Gbit/s-ot. A soros vonalon tov´abb´ıtott jelek ezut´an a rendszerchipbe e´ rkeznek. Az a´ ltalunk alkalmazott rendszerchip a Xilinx a´ ltal tervezett Zynq csal´ad 7020-as tagja. A rendszerchip alkalmaz´asa korszer˝u megold´ast ny´ujt a vegyes jelfeldolgoz´asi ig´enyekre.
kkkkkkADCkkkkkkk vevőklogika
AXIkDMA kvezérlő
DDC
Általánoskvezérlőklogika
ARM AXIkkkkbuszrendszer
Pn = kT B = 3.3110−14 W → −104.8 dBm
kkkkkRFk front3end
kkkDD3 rendszer memória
Gigabit Ethernet
kVezérlőkprogram kkkkkkkkkxLinuxb
RendszerchipkxSoCb Passzívkradar digitáliskjelfeldolgozás
1. a´ bra. T¨obbcsatorn´as blokkv´azlata
passz´ıv
radar
vev˝oplatform
Az a´ ramk¨orben integr´alt FPGA logika k´epes v´egrehajtani a sebess´egkritikus feladatokat, m´ıg a k¨ozvetlen¨ul egy chipben mell´e integr´alt k´et magos ARM processzor hat´ekonyan l´atja el az algoritmikus feladatok megold´as´at. Ennek megfelel˝oen az ADC-t˝ol e´ rkez˝o nagy sebess´eg˝u adatok fogad´as´at az FPGA a´ ramk¨orben megval´os´ıtott ADC vev˝o logika hajtja v´egre. A be´erkez˝o adatok ezut´an r¨ogt¨on a DDC (Digital DownConverter) a´ ramk¨orbe ker¨ulnek, melyben alaps´avra val´o lekever´es ut´an a nagy sebess´eg˝u jel sz˝ur´es´ere e´ s decim´al´as´ara ker¨ul sor az alkalmazott referenciajel s´avsz´eless´eg´enek megfelel˝oen. Jelen k´ıs´erletben 12-es decim´al´asi faktort haszn´altuk a DVB-T jel 8 MHz-es s´avsz´eless´eg´enek feldolgoz´as´ahoz. Ez IQ komplex s´avsz´eless´egben 8.33 MHz-nek felel meg. A DDC a´ ramk¨or kimenet´er˝ol az adatok ezut´an egy DMA (Direct Memory Access) vez´erl˝o modulba ker¨ulnek, amelynek feladata, hogy a vett jelet az ARM processzor magok a´ ltal haszn´alt DDR3 mem´ori´aba m´asolja a processzorok tehermentes´ıt´es´evel. Az ARM processzorok a´ ltal futtatott Linuxos k¨ornyezet ezut´an Gigabit Etherneten kereszt¨ul tov´abb´ıtja a vett jeleket a tov´abbi jelfeldolgoz´ast e´ s detekt´al´asi algoritmusokat
2. a´ bra. RF front-end egys´eg UHF s´avban m˝uk¨od˝o DVB-T jelek v´etel´ere
62
3. a´ bra. Digit´alis adatgy˝ujt˝o k´artya
4. a´ bra. M´er´esi elrendez´es Budapest t´erk´ep´en
futtat´o sz´am´ıt´og´ep sz´am´ara. A rendszer flexibilit´asa e´ s jelfeldolgoz´asi kapacit´asa a k´et r´eszegys´eg (programozhat´o logika e´ s feldolgoz´o egys´eg) k¨oz¨otti hat´ekony inform´aci´o a´ tvitelen alapul. A PS (Processing System) n´egy darab HP (High Performance) porttal rendelkezik, melyek mindegyike 64 bit sz´eles e´ s ak´ar 100 MHz-es o´ rajellel is j´arhat. Ezeket e´ s egy´eb alacsony adatsebess´eg˝u PS portokat az AXI (Advanced Extensible Interface) buszrendszer k¨oti o¨ ssze chipen bel¨ul a PL-el (Programmable Logic). A rendszer a´ ltal ny´ujtott bels˝o adat´atviteli lehet˝os´egek teh´at k¨onnyed´en kiel´eg´ıtik az egyszer˝u adatlet¨olt´esi e´ s robusztus jelfeldolgoz´o algoritmusok adatmozgat´asi ig´enyeit. A PS-en fut´o oper´aci´os rendszer magas szinten kezeli a k¨ulvil´aggal val´o kapcsolat tart´ashoz sz¨uks´eges protokollokat, mik¨ozben a PL bels˝o rendszereit e´ s azok regisztereit k¨ozvetlen¨ul is k´epes el´erni. Emiatt az architektur´alis fel´ep´ıt´es miatt a passz´ıv radar vev˝orendszer u´ j referenciaforr´asra val´o a´ t´all´asa eset´en a szoftverr´adi´o m˝uveleteket megval´os´ıt´o DDC a´ ramk¨or param´etereinek a´ t´all´ıt´asa ak´ar az e´ ppen m˝uk¨od˝o telep´ıtett rendszeren t´avolr´ol is elv´egezhet˝o. IV. IV-A.
´ M E´ R E´ SI EREDM E´ NYEK BEMUTAT ASA
Kalibr´aci´os m´er´es
Laborat´oriumban t¨ort´en˝o m˝uszeres m´er´es folyam´an a vev˝orendszer amplit´ud´o e´ s f´azis egy¨utt fut´asa ker¨ult r¨ogz´ıt´esre. A csatorn´ak egym´ashoz k´epesti kiegyenl´ıt´ese ugyanis elengedhetetlen a nyal´abform´al´asi algoritmusok alkalmaz´as´ahoz. A rendszer teljes kalibr´al´asa a k´ıs´erleti m´er´eshez haszn´alt DVB-T ad´as frekvenciatartom´any´aban t¨ort´ent 606 MHz-t˝ol 614 MHzig 80 pontban. IV-B.
nyal´abform´at. A m´er´eshez a Budapesten u¨ zemel˝o DVB-T ad´otornyok jeleit haszn´altuk fel, melyek a Sz´echenyi-hegyen illetve a H´armashat´ar-hegyen u¨ zemelnek. Az ad´otornyok e´ s a fel´all´ıtott k´ıs´erleti vev˝orendszer geometriai elrendez´es´et a 4 a´ bra szeml´elteti. Az o¨ ssze´all´ıtott terepi m´er´es az 5 a´ br´an l´athat´o. A r´adi´ofrekvenci´as jelek v´etel´ehez egy 4 elem˝u ekvidiszt´ans antennasort haszn´altuk, egy hull´amhossznyi elemt´avols´aggal. A m´er´es elv´egz´ese ut´an a lementett IQ komplex adatok offline m´odon ker¨ultek feldolgoz´asra. Az ir´anym´er˝o k´epess´egek tesztel´es´ehez nagy felbont´assal e´ s dinamikatartom´annyal rendelkez˝o algoritmust v´alasztottam. A 6 a´ bra a MEM (Maximum Entrophy Method) ir´anybecsl˝o algoritmus eredm´eny´et mutatja az antennarendszer k¨ul¨onb¨oz˝o sz¨oghelyzeti eset´en. Az eredm´enyek alapj´an kijelenthetj¨uk, hogy a vev˝orendszer megfelel˝oen m˝uk¨odik a v´egrehajtott ir´anym´er˝o algoritmusok a v´artnak megfelel˝o eredm´enyeket hozt´ak. A m´er´esi eredm´enyekben megjelen˝o sz¨oghib´ak okoz´oja lehet az antennarendszer kalibr´aci´oj´anak hi´anya illetve a v´arosi k¨or¨ulm´enyek k¨oz¨ott fell´ep˝o t¨obbsz¨or¨os reflexi´ok hat´asa. Az ir´anybecsl˝o algoritmus eredm´enyeinek ismeret´eben kisz´am´ıtottuk a referencia e´ s a c´elt´argycsatorna jeleinek el˝oa´ ll´ıt´as´ahoz sz¨uks´eges nyal´abform´akat. Az eredm´enyek a 7 a´ br´an tekinthet˝oek meg. A kapott eredm´enyek megfelelnek az elv´ar´asainknak hiszen a referencia csatorna nyal´abform´aj´aban
Terepi m´er´esi eredm´enyek
A rendszer t¨obbcsatorn´as nyal´abform´al´asi k´epess´egit a Budapesti M˝uszaki e´ s Gazdas´agtudom´anyi Egyetem V1-es e´ p¨ulet´enek tetej´en DVB-T referencia jelek v´etel´evel tesztelt¨uk. A k´ıs´erleti m´er´es sor´an k´et ad´otorony jel´enek pontos ir´any´at hat´aroztuk meg ir´anybecsl˝o algoritmusok haszn´alat´aval, majd a pontos ir´anyok ismeret´eben MSINR (Maximal Signal to Interference plus Noise Ratio) nyal´abform´al´o algoritmus seg´ıts´eg´evel l´etrehoztunk egy referencia jelet vev˝o nyal´abform´at, e´ s egy c´elt´argy reflexi´ok v´etel´ehez haszn´alt
5. a´ bra. Vev˝oegys´eg nyal´abform´al´asi k´epess´egeinek k´ıs´erleti m´er´ese a BME V1-es e´ p¨ulet´en
63
Passzívyradarycsatornákykeresztkorrációsyfüggvénye
MEMMiránybecsőMalgoritmusMeredményei
0
Normalizáltyamplitúdóy[dB]
0
AmplitúdóM[dB]
-5 -10 -15 -20 -25 -30
0
20
40
60
80
100
120
140
160
Céltárgyycsatorna Referenciaycsatornal
-20
-40
-60
-80
180
BeesésiMszögM[fok]
0
24
48
időy[us]
72
96
120
6. a´ bra. MEM ir´anybecsl˝o algoritmus eredm´enyei k¨ul¨onb¨oz˝o antennahelyzetek eset´en
8. a´ bra. Direkt jel interferencia elnyom´as a radar csatorn´ak keresztkorrel´aci´os f¨uggv´eny´en
megjelent k´et f˝onyal´ab az ad´otornyok ir´any´aban ezzel maximaliz´alva a referencia jel jel-zaj viszony´at. A c´elt´argyakat megfigyel˝o csatorn´aban pedig null-helyek ker¨ultek a nagy teljes´ıtm´ennyel u¨ zemel˝o ad´otornyok ir´any´aba ezzel maximaliz´alva a radar csatorn´ak k¨oz¨otti izol´aci´ot. A passz´ıv radar csatorn´ai k¨oz¨ott el´ert t´enyleges izol´aci´ot a 8 a´ bra mutatja be. Az a´ br´an a referenciacsatorna autokorrel´aci´os f¨uggv´enye e´ s a c´elt´argycsatorna referenciacsatorn´aval vett keresztkorrel´aci´os f¨uggv´enye l´athat´o. A korrel´aci´os f¨uggv´enyek kisz´am´ıt´asa sor´an a koherens feldolgoz´asi id˝o 125 ms. A kapott eredm´enyek alapj´an a k´ıs´erleti m´er´es folyam´an a´ tlagosan 15 dB-es elnyom´ast siker¨ult el´ern¨unk. A kapott eredm´enyeken szint´en j´ol megfigyelhet˝o a k´et ad´otorony a´ ltal sug´arzott referenciajel be´erkez´esi id˝ok¨ul¨onbs´ege miatt keletkez˝o korrel´aci´os cs´ucs is. Az elnyom´as tov´abb n¨ovelhet˝o az RF vev˝o csatorn´ak illetve az antenna elemek k¨oz¨otti nagyobb m´ert´ek˝u izol´aci´o biztos´ıt´as´aval, valamint szofisztik´altabb nyal´abform´al´o algoritmusok haszn´alat´aval.
azonban speci´alis vev˝oegys´egekre van sz¨uks´eg. A cikkben bemutat´asra ker¨ult egy modern rendszerchip alap´u architekt´ur´ara alapoz´o nagy integr´alts´aggal, flexibilit´assal e´ s jelfeldolgoz´asi kapacit´assal rendelkez˝o passz´ıv radar vev˝oplatform. A rendszer a tervez´esi megfontol´asokt´ol kezdve a r´eszletes fel´ep´ıt´esen kereszt¨ul a terepi m´er´esi eredm´enyekkel bez´ar´olag ker¨ult ismertet´esre. A tov´abbiakban a vev˝orendszer hat´ekony felhaszn´al´ash´aoz szofisztik´alt algoritmusok kidolgoz´asa sz¨uks´eges. A t¨obbcsatorn´as m˝uk¨od´eshez optim´alis nyal´abform´al´o algoritmusok, a megfelel˝o c´elt´argymegvil´ag´ıt´ashoz pedig adapt´ıv referencaijel kiv´alaszt´o elj´ar´asok kutat´asa k´ıv´anatos. ¨ ONETNYILV ¨ ´ ´I T AS ´ K OSZ AN A projekt a Magyar K¨ozleked´esi M´ern¨okk´epz´es´ert Alap´ıtv´any (AMKMA) t´amogat´as´aval val´osult meg. ´ H IVATKOZ ASOK
[1] KhalidJamil, MubashirAlam, M.AbdulHadi, ZeyadO.Alhekail A multiband multi-beam software-defined passive radar part I: System design, V. IET International Conference on Radar Systems (Radar 2012), 22-25 Oct. A passz´ıv radarok sz´eles k¨orben t¨ort´en˝o elterjed´es´ehez [2] 2012 MubashirAlam, KhalidJamil, ZeyadO.Alhekail, SamiAl-Humaidi A multiolyan hardveres t´amogat´asok fejleszt´ese sz¨uks´eges, amely band multi-beam software-defined passive radar part II: Signal processing, IET International Conference on Radar Systems (Radar 2012) 22-25 azok eredend˝o el˝onyeit e´ s felmer¨ul˝o neh´ezs´egit c´elozza meg. 2012 Az elektrom´agnes k¨ornyezet tel´ıtetts´ege remek lehet˝os´eget [3] Oct. Sebastiaan Heunis, Yoann Paichard, Michael Inggs Passive Radar using a ny´ujt a passz´ıv elven m˝uk¨od˝o radarok elterjed´es´ere ehhez Software-Defined Radio Platform and Opensource Software Tools, Radar Conference (RADAR), 2011 IEEE 23-27 May 2011 [4] Qing Wang, Chunping Hou, Lu Y. An Experimental Study of WiMAXBased Passive Radar IEEE Transactions on Microwave Theory and Szintetizáltniránykarakterisztikák Techniques (Volume:58 Issue:12) 18 october 2010 5 [5] Tan D.K.P., Hongbo Sun, Lu Y. Weixian Liu Feasibility analysis of GSM signal for passive radar Radar Conference, 2003. Proceedings of the 2003 0 IEEE 5-8 May 2003 [6] Tamas Peto, Levente Dudas, Rudolf Seller, Peter Renner Digital television -5 broadcast -based passive radar research and development 2014 20th International Conference on Microwaves, Radar, and Wireless Commu-10 nication (MIKON) Gdansk 16-18 June 2014 [7] Tao R., Wu H.Z., Shan T. Direct-path suppression by spatial filtering in -15 DVB-T adótorny mért irányok Céltárgyncsatorna digital television terrestrial broadcasting-based passive radar IET Radar, Referenciancsatorna Sonar & Navigation (Volume:4 Issue:6) December 2010 -20 [8] Malanowski M., Kulpa K. Digital beamforming for Passive Coherent 0 20 40 60 80 100 120 140 160 180 Location radar Radar Conference, 2008. RADAR ’08. IEEE, Rome 26-30 Beesésinszögn[fok] May 2008 [9] Moscardini C., Conti M., Berizzi F., Martorella M., Capria A. Spatial 7. a´ bra. Referencia e´ s c´elt´argy csatorna kialak´ıtott Adaptive Processing for Passive Bistatic Radar Radar Conference, 2014 IEEE Cincinnati, OH 19-23 May 2014 nyal´abform´ai
Amplitúdón[dB]
¨ SSZEGZ E´ S O
64