Prepared by: Eng. Ahmed Zaaza
Mar 11, 2016
Prepared by: Eng. Ahmed Zaaza
ATMATMtransporttransport
IPIPtransporttransport
Convergence Sub-layerConvergence Sub-layer
Common part Sub-layerCommon part Sub-layer
Privacy Sub-layerPrivacy Sub-layer
Physical Sub-layerPhysical Sub-layer
ATMATMtransporttransport
IPIPtransporttransport
Convergence Sub-layerConvergence Sub-layer
Common part Sub-layerCommon part Sub-layer
WIMAX layered architecture
WIMAX physical sub-layer
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
WIMAX physical sub-layer1. Randomizer:
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
WIMAX physical sub-layer
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
1. Randomizer:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Data input
Data output
• Randomizer is used to change the bit order to avoid long sequence of consecutive zeros & ones.
WIMAX physical sub-layer
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
1. Randomizer:
• On the downlink sub-frame, Preambles are not randomised, the randomization begins from the information bits.
• At the start of the DL sub-frame, the randomizer is initiated with the sequence: 1 0 0 1 0 1 0 1 0 0 0 0 0 0 0
WIMAX physical sub-layer
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
1. Randomizer:
• At the start of burst 2, the randomiser is initialised with the vector as shown.
UplinkUplinkSub-frameSub-frame
DownlinkSub-frame
PreamblePreamble FCHFCH MAPsMAPs UL PHY
Burst 1
UL PHY
Burst n
.…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Frame number
DIUC BSID1 1 1
WIMAX physical sub-layer2. Channel coding:
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
WIMAX physical sub-layer2. Channel coding:Why we must use coding before sending data over a channel?
1001110100011010
Data bits without coding
Error from channel
1001010101111010
Data bits with error
Are these bits have error or not ?Are these bits have error or not ?I don’t know . . . . I don’t know . . . .
WIMAX physical sub-layer2. Channel coding:
Linear Block Code
Message block Message block UU of K-bits of K-bitsParity check bitsParity check bits
K - bits
Coded message V of N - bits
(N-K ) bits
• All possible messages = all possible code words = 2 ^ K
• How we could get the coded message V from the un-coded message U.
WIMAX physical sub-layer2. Channel coding:
Linear Block Code• We must have G-matrix.
Parity matrix
P
Identity matrix
(Unity matrix)I
G =
N
K
K
N - K
• If we have a un-coded message U then we multiply it with G to get V
V = U*G
Contains only K code wordsContains only K code words
WIMAX physical sub-layer2. Channel coding: Linear Block Code
• Example:
1 1 0 1 0 0 0
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
G =
N
K
K
N - K
V = U*G
V = 0 0 0 1 1 0 1 (coded message to be send)
K = 4K = 4N-K = 3N-K = 3
if U = 1101
Check bits U
WIMAX physical sub-layer2. Channel coding: Linear Block Code
• At the receiver we use H-matrix:
• In our example:
Parity matrix
transposeP-1
Identity matrix
(Unity matrix)I
H =
N
K
N-K
N - K
1 0 0 1 0 1 1
0 1 0 1 1 1 0
0 0 1 0 1 1 1
H = N
K
N-K
N - K
WIMAX physical sub-layer2. Channel coding: Linear Block Code
• We send the constructed V:
U V=U*G channel with error R = V + e
• In our example:
V = 0001101R = 0001111 Syndrome (S) = R * HT
S = (0001111) * = 1 1 1
1 0 0
0 1 0
0 0 1
1 1 0
0 1 1
1 1 1
1 0 1
The sixth bit has an error
R = 0001111
U = 0001101
WIMAX physical sub-layer2. Channel coding: Cyclic Block Code
• This code called Cyclic because if we make right rotate to any code word, it gives another code word.
• It represents the un-coded message by a polynomial U(x) and the code by another polynomial g(x).
• Code dimensions can be written as follows: C (N,K)where: N is the length of the code word.
K is the length of the un-coded message. N-K is the number of added check bits.
• The greatest power of the code (generator) polynomial indicates the number of added check bits (N-K).
WIMAX physical sub-layer2. Channel coding: Cyclic Block Code
• Example:•C (7,4) N=7 , K=4 , m=3• Generator polynomial g(x) = X³ + X² + 1• Message polynomial U(x) = X² + X + 1 (mean 1 1 1
0 )Step (1):• Multiply U(x) * X^(m) = X³ * (X² + X + 1) = X + X⁴ + X³
Step (2):• Divide U(x) * X^(m) by g(x)
Step (3):• V(x) = U(x) * X^(m) + b(x) = X + X ⁴ + X³ + X
= 0 1 0 1 1 1 0
1 + X + X² + X⁴
5X + X⁴ + X³X³ + X + 1X² + X
X + X ³ + X²
5
5
X ⁴ + X²X ⁴ + X² + X
XReminder b(x)
5
Check bits U
• U(x) = R(x) + S(x)• R(x) = 0 1 1 1 1 1 0
= X + X ⁴ + X³ + X² + X + X²
WIMAX physical sub-layer2. Channel coding: Cyclic Block Code
In our example:• V(x) = X + X ⁴ + X³ + X
= 0 1 0 1 1 1 0• R(x) = 0 1 1 1 1 1 0
= X + X ⁴ + X³ + X² + X
5X + X⁴ + X³ + X² + XX³ + X + 1X² + X
X + X ³ + X²5
X ⁴ + XX ⁴ + X² + X
X²Reminder S(x)
5
channel with error V(x) R(x) = V (x)+ e(x)
5
Syndrome (S(x)) = R(x) mod g(x)
5
U(x) = X + X ⁴ + X³ + X = 0 1 0 1 1 1 05
• BCH codes is a type of codes used to encode block of K symbols each symbol consist of S-bits and adds some symbols as parity check each of s-bits.
• It uses a term called finite field (Galois Fields (GF)).• Because we transmit binary data so, we use GF(2^s). This GF
contain elements as follows: F={ 0,1,α, α ², α ³, α ⁴, . . . . . ., α^(2^m – 1) }
• Example: GF(2^3) = {0,1, α, α ², α ³, α⁴, α ,α ,α } contains 8 non zero symbols
Each element consist of 3 bits.
WIMAX physical sub-layer2. Channel coding: BCH code
S bitsS bits S bitsS bits S bitsS bits S bitsS bits. . . .
K-symbols
S bitsS bits S bitsS bits
N-K symbols
5 6 7
Equal 1
WIMAX physical sub-layer2. Channel coding: BCH code
• So, each one element have a distribution according to a given Field Generator Polynomial ex: P(x) = X + X + 1
• The generator polynomial is generated from the roots & there conjugate of the Field Generator Polynomial.
• Example: P(x) = x³ + x + 1 S = 3
i α α² α α
0 1 0 0 11 α 0 1 02 α² 1 0 03 α³ = α + 1 0 1 1 4 α⁴ = α (α + 1 ) = α² + α 1 1
05 α = α (α² + α ) = α³ + α² = α² + α + 1 1 1
16 α = α (α² + α + 1) = α³ + α² + α = α² + 1 1 0
17 α = α (α² + 1) = α³ + α = α + 1 + α = 1 0 0
1 repeated
s
567
i 1 0
WIMAX physical sub-layer2. Channel coding: BCH code
• BCH code has a dimension of C(N,K) of s-bits.
• The number of parity symbols = N – K = 2T
• The code can correct up to T error symbols
May ( T ) complete symbols have errors.
May ( T ) bits have errors each one in difference symbol.
WIMAX physical sub-layer1. Reed-Solomon Encoder:
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
WIMAX physical sub-layer2. Channel coding: Reed – Solomon
code• It is a part from the BCH code.
• Its dimension is: RS(255,239)
• N = 255 , K = 239 , S = 8• N-K = 16 = 2T• T = 8 it can correct 8 symbols.
• It uses GF( 2^8 ) i.e: each symbol consist of 8 bit.
• Field generator polynomial: p(x) = x8 + x4 + x3 + x2 + 1.• Code generator polynomial: g(x) = (x + m0) (x + m1) (x + m2)…(x +
m2T-1)
• Coding rate = 239/255 = 0.937
WIMAX physical sub-layer1.Convolutional
Encoder:
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• It is defined by three parameters n, k, mWhere:• n: number of output coded bits• k: number of input data bits enter the encoder simultaneously.• m: is the number of registers of the encoder menus one (m+1 =
registers ).
• The coding rate Rc = k/n (k is chosen to be always 1)
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• Example of convolutional coder of: R = ½ , k = 1 , n = 2 , m = 2
Input data bitsm
Output coded bits
1u
2u
First coded bit
Second coded bit
21,uu
(Branch word)
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• Example of convolutional coder of: R = ½ , k = 1 , n = 2 , m = 2
• Message m = (101)
0000 0011
1100 0011
11 00
11 00
1 11 1 1 01 0
0 00 0 1 01 0
UU11 UU22 UU11 UU22
UU11 UU22UU11 UU22
UU11
UU22
UU11
UU22
UU11
UU22
UU11
UU22
TT11 TT22
TT33 TT44
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder
1100 000000 001 11 1 0 00 0UU11 UU22 UU11 UU22
UU11
UU22
UU11
UU22
TT55 TT66
n = 2, k = 1, m= 2,
L = 3 input bits 10 output bits
k = (101) U = (11 10 00 10 11)
EncoderEncoder
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• Polynomial representation:Polynomial representation:• We define n generator polynomials, one for each modulo-2 We define n generator polynomials, one for each modulo-2
adder. Each polynomial is of degree adder. Each polynomial is of degree mm or less and describes or less and describes the connection of the shift registers to the corresponding the connection of the shift registers to the corresponding modulo-2 adder.modulo-2 adder.
Example: for m = 2Example: for m = 2
The output sequence is found as follows:The output sequence is found as follows:
22)2(2
)2(1
)2(02
22)1(2
)1(1
)1(01
1..)(
1..)(
XXgXggX
XXXgXggX
g
g
)()( with interlaced )()()( 21 XXuXXuXV gg
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• Let us see the output from the equation:
g1(x) = 1 + X + X ²g2(x) = 1 + X ²
u(x) * g1(x) = (1 + X ²) (1 + X + X ²) = 1 + X + X³ + X⁴u(x) * g2(x) = (1 + X ²) (1 + X ²) = 1 + X⁴
u(x) * g1(x) = 1 + X + 0(X²) + X³ + X⁴ output from first branch U1
u(x) * g2(x) = 1 + 0(X) + 0(X²) + 0(X³) + X⁴ output from second branch U2
1 11 1UU11 UU22
1 01 0UU11 UU22
0 00 0UU11 UU22
1 01 0UU11 UU22
1 11 1UU11 UU22
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• Convolutional coding in wimax:
R = ½ , k = 1 , n = 2 , M = 6
WIMAX physical sub-layer2. Channel coding: Convolutional
encoder• Convolutional coding in wimax:
• OFDM symbol:
6 zero bits to initialize the encoder
• OFDMA symbol:
ConvolutionalConvolutionalEncoderEncoder
ConvolutionalConvolutionalEncoderEncoderData blockData block 6 bits6 bits Data blockData block 12 bits12 bits
Data blockData block
WIMAX physical sub-layer1. Interleaver:
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
WIMAX physical sub-layer1. Interleaver:
•Convolutional codes are suitable for memory less channels with random error events.•Some errors have bursty nature:
Statistical dependence among successive error events (time-correlation) due to the channel memory.
Like errors in multipath fading channels in wireless communications.
A burst error of length 3 can not be A burst error of length 3 can not be corrected.corrected.
Let us use a block interleaver 3X3Let us use a block interleaver 3X3
A1 A2 A3 B1 B2 B3 C1 C2 C32 errors
A1 A2 A3 B1 B2 B3 C1 C2 C3
Interleaver
A1 B1 C1 A2 B2 C2 A3 B3 C3
A1 B1 C1 A2 B2 C2 A3 B3 C3
Deinterleaver
A1 A2 A3 B1 B2 B3 C1 C2 C31 error 1 error 1 error
WIMAX physical sub-layer1. Interleaver:
WIMAX physical sub-layer1. Mapping:
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
• The The bit rate bit rate defines the rate at which information is passed. defines the rate at which information is passed. • The The baud baud (or (or signallingsignalling)) rate rate defines the number of symbols per defines the number of symbols per
second. Each symbol represents second. Each symbol represents nn bits, and has bits, and has MM signal states, signal states, where where M = 2M = 2nn. This is called . This is called M-ary signallingM-ary signalling..
WIMAX physical sub-layer1. Mapping:
Amplitude Shift Keying (ASKAmplitude Shift Keying (ASK))
Pulse shaping can be employed to remove spectral Pulse shaping can be employed to remove spectral spreading.spreading.
ASK demonstrates poor performance, as it is heavily ASK demonstrates poor performance, as it is heavily affected by noise and interference.affected by noise and interference.
BasebandData
ASK modulatedsignal
A cos ct A cos ct0 0
WIMAX physical sub-layer1. Mapping:
Frequency Shift Keying (FSK)Frequency Shift Keying (FSK)
Bandwidth occupancy of FSK is dependant on the spacing of the two Bandwidth occupancy of FSK is dependant on the spacing of the two symbols. A frequency spacing of 0.5 times the symbol period is symbols. A frequency spacing of 0.5 times the symbol period is typically used.typically used.
BasebandData
FSK modulatedsignal
f1 f1f0 f0
where f0 = A cos(c-)t and f1 = A cos(c+)t
WIMAX physical sub-layer1. Mapping:
Phase Shift Keying (PSK)Phase Shift Keying (PSK)
Binary Phase Shift Keying (BPSK) demonstrates better Binary Phase Shift Keying (BPSK) demonstrates better performance than ASK and FSK.performance than ASK and FSK.
PSK can be expanded to a M-ary scheme, employing multiple PSK can be expanded to a M-ary scheme, employing multiple phases and amplitudes as different states.phases and amplitudes as different states.
BasebandData
Binary PSK modulatedsignal
s1 s1s0 s0
where s0 = -A cos ct and s1 = A cos ct
WIMAX physical sub-layer1. Mapping:
Modulation - QPSKModulation - QPSK
Quadrature Phase Shift Keying is effectively two independent Quadrature Phase Shift Keying is effectively two independent BPSK systems (BPSK systems (I and QI and Q), and therefore exhibits the same ), and therefore exhibits the same performance but performance but twicetwice the bandwidth efficiency. the bandwidth efficiency.
Cos Wc t
900
Odd Data
Even Data
(NRZ)
(NRZ)
QPSK
Q-Channel
I-Channel
Q
(-1,-1)
(-1,1)
I
(1,1)
(1,-1)Wc = Carrier Frequency, I = In phase channel, Q = Quadrature channel
WIMAX physical sub-layer1. Mapping:
Multi-level (M-ary) Phase and Amplitude ModulationMulti-level (M-ary) Phase and Amplitude Modulation
Amplitude and phase shift keying can be combined to transmit Amplitude and phase shift keying can be combined to transmit several bits per symbol (in this case M=4). These modulation several bits per symbol (in this case M=4). These modulation schemes are often refered to as schemes are often refered to as linearlinear, as they require linear , as they require linear amplification.amplification.16QAM has the largest distance between points, but requires 16QAM has the largest distance between points, but requires very linear amplification. 16PSK has less stringent linearity very linear amplification. 16PSK has less stringent linearity requirements, but has less spacing between constellation points, requirements, but has less spacing between constellation points, and is therefore more affected by noise.and is therefore more affected by noise.M-ary schemes are more bandwidth efficient, but more M-ary schemes are more bandwidth efficient, but more susceptible to noise.susceptible to noise.16 PSK 16 APSK16 QAM
WIMAX physical sub-layer1. Mapping:
MappingMapping
The encoded and interleaved binary serial input data shall be divided into groups of NcpC (1, 2, 4, or 6) bits and converted into complex numbers representing BPSK, QPSK, 16-QAM, or 64-QAM constellation points. The conversion shall be performed according to Gray-coded constellation mappings
WIMAX physical sub-layer1. Mapping:
• d = (I + jQ) × KMODd = (I + jQ) × KMOD• The output values, d, are formed by multiplying the The output values, d, are formed by multiplying the
resulting (I+jQ) value by a normalization factor resulting (I+jQ) value by a normalization factor KMOD.KMOD.
• The normalization factor, KMOD, depends on the The normalization factor, KMOD, depends on the base modulation modebase modulation mode
Modulation KMOD
BPSK 1
QPSK 1/ 16-QAM 1/64-QAM 1/
WIMAX physical sub-layer1. Mapping:
Encoding tables for different modulation schemes
Input b0 I-out Q-out
0 -1 0
1 1 0
Input (b1)
Q-out
0 -1
1 1
Input (b0 ) I-out
0 -1
1 1
BPSK encoding table
QPSK encoding table
WIMAX physical sub-layer1. Mapping:
16 - QAM encoding table
Input (b0b1)
I-out
00 -3
01 -1
11 1
10 3
Input (b0b1)
Q-out
00 -3
01 -1
11 1
10 3
Encoding tables for different modulation schemes
WIMAX physical sub-layer1. Mapping:
64-QAM encoding table
Input (b0b1b2) I-out
000 -7
001 -5
011 -3
010 -1
110 1
111 3
101 5
100 7
Input (b3b4b5)
Q-out
000 -7
001 -5
011 -3
010 -1
110 1
111 3
101 5
100 7
Encoding tables for different modulation schemes
WIMAX physical sub-layer1. Mapping:
Constellation of different modulation schemesConstellation of different modulation schemes
WIMAX physical sub-layer1. Mapping:
WIMAX physical sub-layer1. Mapping:
WIMAX physical sub-layer1. IFFT :
Data Source RandomizerReed-
SolomonEncoder
ConvolutionalEncoder
Sub-CarrierMapping IFFT
Interleaver
To air interface
Channel coding
90
WIMAX physical sub-layer1. IFFT :
• Let us introduce the meaning of the orthogonality.
0 π/2 π 3π/2 2π
1
0.5
0.5
1
Sin (f)Cos (f)Sin(f) * Cos(f) = 0
WIMAX physical sub-layer1. IFFT :
• We can obtain orthogonal signals by choosing their frequencies have integer multiple of the basic frequency.
• sin sin αα , sin 2 , sin 2αα , sin3 , sin3αα are orthogonal signals are orthogonal signals
0 π/2 π
1
0.5
0.5
1
Sin 3α Sin α Sin 2α 1
0.5
0.5
1
sin 2sin 2αα * sin3 * sin3αα = 0 = 0 sin sin αα * sin2 * sin2αα = 0= 0
0 π/2 π
+ + ++++-- -- -- -- -- --
WIMAX physical sub-layer1. IFFT :
t
f
A
f1
f2 = n*f1
f3 = m*f1
f1 f2 f3
f
• Un-modulated orthogonal frequencies.
A
WIMAX physical sub-layer1. IFFT :
t
f
A
f1
f2 = n*f1
f3 = m*f1
f1 f2 f3
f
• modulated orthogonal frequencies.
A
WIMAX physical sub-layer1. IFFT :
• The solution for multicarrier using several oscillator.
S/PS/P
t
Oscillator array
S(t)
OFDM symbol in time domain
• Disadvantages:• It requires multiple oscillator for all subcarriers ex.: 256, 512, . . . • It requires very sharp filters (rectangular) to select each carrier.
WIMAX physical sub-layer1. IFFT :
• The solution for multicarrier using inverse fast forrier transform.
S/PS/P
t
S(t)
OFDM symbol in time domain
Samples
1
0
)/2(
).()(N
n
Nnkj
nxKX
1
0
)/2(
).()/1()(N
k
Nnkj
kxNnX
• DFT (FFT):
• IDFT (IFFT):
WIMAX physical sub-layer1. IFFT :
• The solution for multicarrier using inverse fast forrier transform.
S/PS/P
t
S(t)
OFDM symbol in time domain
Samples
1
0
1
0
)/2cos().()/2sin().()(N
n
N
n
NnkjnbjNnkjnaKX
])/2cos().()/2sin().()[/1()(1
0
1
0
N
k
N
k
NnkjkbNnkjkaNnX
• DFT (FFT):
• IDFT (IFFT):
WIMAX physical sub-layer1. IFFT :
• OFDM symbol in frequency domain:
t
S(t)
OFDM symbol in time domain
f
WIMAX physical sub-layer1. IFFT :
• OFDM symbol in frequency domain:
f
Lower
Guard
band
Upper
Guard
band
Datasubcarrier
s
Pilotsubcarrier
s
DC
∆f = 1/Tb
WIMAX physical sub-layer1. Cyclic prefix :
• OFDM & Inter-Symbol interference:
• We need to eliminate the corruptedPeriod of the next symbol.
• So, we adds a Guard period between Each two successive symbols.
• Solution:
t
T (symbol)
T (symbol)
CorruptedSymbol Symbol Symbol . . . . .
Guard Period
SymbolSymbol
SymbolSymbol
SymbolSymbol
WIMAX physical sub-layer1. Cyclic prefix :
• We solve the adjacent carrier interference butThe ISI still exist.
T (symbol)
Symbol Symbol Symbol
Guard Period
SymbolSymbol
SymbolSymbol
SymbolSymbol
t
T(s)T(g)
T(g)
T(b)
Copy final part of the symbol
WIMAX physical sub-layer
S/PS/P D/AD/A
CPCP3.5 GHz3.5 GHzSamplin
g Frequen
cy(fs)• Fs = n * BW
• n: sampling factor – depends on the used BW – Possible values are: 8/7 , 86/75 , 144/125 , 316/275 , 57/50.
WIMAX physical sub-layer1. IFFT :
• OFDM symbol duration:
f
LowerGuar
dband
Upper
Guard
band
Datasubcarriers
Pilotsubcarriers
DC
∆f = 1/Tb
• OFDM symbol duration = Useful symbol time + guard time (CP)= (1/one sub-carrier spacing) + G * Useful symbol time= (1/∆f) ( 1 + G)= (1/(fs/Nfft)) ( 1 + G)= (1/(n*BW/Nfft)) ( 1 + G)
WIMAX physical sub-layer1. IFFT :
• OFDM symbol Data rate:
f
LowerGuar
dband
Upper
Guard
band
Datasubcarriers
Pilotsubcarriers
DC
∆f = 1/Tb
• Data rate= number of un-coded bites per OFDM symbol/ OFDM symbol duration
= (data sub-carriers * bits per FFT point * coding rate ) / OFDM symbol duration.
WIMAX physical sub-layer1. IFFT :
• OFDM & OFDMA PHY layer:
f
LowerGuardband
UpperGuardband
Datasubcarriers
Pilotsubcarriers
DC
∆f = 1/Tb
•OFDM (fixed WiMAX) PHY layer use only 256 sub-carrier so, the sub-carrier spacing is variable with the selected BW.
•OFDMA (mobile WiMAX) PHY layer use only 256, 512, 1024, 2048 sub-carriers so, the sub-carrier spacing is fixed with the selected BW.
ATMATMtransporttransport
IPIPtransporttransport
Convergence Sub-layerConvergence Sub-layer
Common part Sub-layerCommon part Sub-layer
Privacy Sub-layerPrivacy Sub-layer
Physical Sub-layerPhysical Sub-layer
ATMATMtransporttransport
IPIPtransporttransport
Convergence Sub-layerConvergence Sub-layer
Common part Sub-layerCommon part Sub-layer
WIMAX layered architecture
WIMAX Privacy Sub-layer
The fundamental services we need:
WIMAX Privacy Sub-layerAttacks Types:
User A User B
Attacker• Modification
User A User B
Attacker
• Attack availability
User A User B
Attacker• Attack Entity
Authentication
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
• Types of Encryption:
1.Symmetric Key Encryption: used in traffic encryption.2.Asymmetric Key Encryption: used in key encryption.
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
Symmetric Key Encryption
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
• It is based on the idea that the Transmitter have the secret key of the Receiver .
MS 1SC: 2008
MS 2SC: 2009
Data encrypted with key: 2009Data encrypted with key: 2008
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
• The simplest example of the encryption is the XOR function.
0 1 1 0 1 1 0
1 0 1 1 0 1 1 1 1 0 1 1 0 1Plain
text
KeyCipher text 0 1 1 0 1 1 0
Key
1 0 1 1 0 1 1 Received Plain text
• But the XOR have some critical disadvantages:• Known text attack.• Chosen text attack.• Flipping attack.
• Note: both Plaintext & Key must be the same in size.
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
• So, we must develop another method doesn’t depend on the XOR directly.
• We use Simple DES technique (Data Encryption Standard).
KeyKeyschedulerschedulerKey 10-
bit EncryptionEncryption
Plain text 8-bit
Cipher text 8-bit
Key1 8-bit
Key2 8-bit
Simple DES (Data Encryption Standard)
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
KeyKeyschedulerschedulerKey
10-bitEncryptionEncryption
Plain text 8-bit
Cipher text 8-bit
Key1 8-bit
Key2 8-bit3 5 2 7 4 10 1 9 8 63 5 2 7 4 10 1 9 8 6
LS - 1LS - 1 LS - 1LS - 1
LS - 2LS - 2 LS - 2LS - 2
Compression Permutation
Compression Permutation
Key 1
Key 2
Key 10-bit
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
KeyKeyschedulerschedulerKey
10-bitEncryptionEncryption
Plain text 8-bit
Cipher text 8-bit
Key1 8-bit
Key2 8-bit
2 6 3 1 4 8 5 72 6 3 1 4 8 5 7
F1F1
SwitchSwitch
F2F2
Key 1
Key 2
Plain text 8-bit
P-1P-1
Cipher text 8-bit
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
EncryptionPlain text 8-bit
Cipher text 8-bit
Key 10-bit
• We want to calculate the encryption power.• 2^10 / 2^8 = 2^2 (Keys per Cipher)• This means that each one plain text can have 4(2^2) different Cipher
text.
WIMAX Privacy Sub-layer
Confidentiality using Encryption:• If we want to increase the encryption system power then we increase
the Key length.• But this will be very difficult in hardware because this require change
in all the system.• So, we use multi-encryption systems.
EncryptionPlain text 8-bit
Cipher text 8-bit
Key1 10-bit
Encryption Encryption
Key2 10-bit
Key3 10-bit
WIMAX Privacy Sub-layer
Confidentiality using Encryption:• Multi-encryption modes:
EPlain text 8-bit
Cipher text 8-bit
Key1
E E
Key2
Key3
EEE mode
EPlain text 8-bit
Cipher text 8-bit
Key1
D E
Key2
Key3
EDE mode
WIMAX Privacy Sub-layer
Confidentiality using Encryption:• Modes of operation of block cipher:
• There are many modes of operation for the encryption block.1. ECB (Electronic Code Block)2. CBC (Cipher Block Chaining)3. CFB (Cipher Feed Back)4. OFB (Output Feed Back)5. CTR (Counter mode)
• The question is:How will the block operate in multi Plain text input?
Encryption
Plain text
Cipher text
Key
WIMAX Privacy Sub-layer
Confidentiality using Encryption:ECB (Electronic Code
Block)
Encryption
Plain text 1
Cipher text 1
Key Encryption
Plain text 2
Cipher text 2
Key Encryption
Plain text 3
Cipher text 3
Key
Features:•If blocks received out of order, the system still run.•No error propagation.•Can’t sense any of the attacks (deletion, insertion, exchanging, substitution).• Suitable to one block ciphering.
WIMAX Privacy Sub-layer
Confidentiality using Encryption:CBC (Cipher Block
Chaining)
Features:•Ci = EK (Pi + Ci-1)•Error propagation occur.•Very sense to any of these attacks (deletion, insertion, exchanging, substitution).• Suitable to multi-block ciphering.
Encryption
Plain text 1
Cipher text 1
Key Encryption
Plain text 2
Cipher text 2
Key Encryption
Plain text 3
Cipher text 3
Key
IV
WIMAX Privacy Sub-layerConfidentiality using Encryption:
CBC (Cipher Block Chaining)
Decryption
Plain text 1
Cipher text 1
Key Decryption
Plain text 2
Cipher text 2
Key Decryption
Plain text 3
Cipher text 3
Key
If Ci is corrupted then the error propagates to Pi & Pi+1
IV
WIMAX Privacy Sub-layerConfidentiality using Encryption:
WIMAX Traffic encryption algorithms
• WIMAX uses 3-DES algorithm in CBC mode EDE which:• Key = 56 bits.• Plain text & Cipher text = 64 bits.
Encryption
Plain text 1
Cipher text 1
Key Encryption
Plain text 2
Cipher text 2
Key Encryption
Plain text 3
Cipher text 3
Key
IV
WIMAX Privacy Sub-layerConfidentiality using Encryption:
WIMAX Traffic encryption algorithms
DES - CBCDES - CBC User messageUser message StuffingStuffingn * 64
7 - bit7 - bit PP 7 - bit7 - bit PP 7 - bit7 - bit PP. . . . .
64 bit
IVIV
XORXOR CBC - IVCBC - IVPHY – Synch fieldPHY – Synch field
Encrypted messageEncrypted message
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
Asymmetric Key Encryption
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
• It is based on the idea that the Transmitter doesn’t have the secret key of the Receiver .
What is the solution?
?MS 1 MS 2
WIMAX Privacy Sub-layer
Confidentiality using Encryption:
• We must know the MOD operation which mean the reminder of the division operation.
• 7 mod 5 = 2 7/5 = 1 & 2 reminder
• (6+3) mod 5 = 4• (x mod n) + (y mod n) mod n = (x + y) mod
n
WIMAX Privacy Sub-layer
Confidentiality using Encryption:• Additive inverse:• Y + (-Y) = 0
• -y mod n = ?• The we must get the value of –y in the modulo system.
• Example:
5 – 7 mod 10 = 5 + (-7 + 10) mod 10 = 5 + 3 mod 10 = 8
WIMAX Privacy Sub-layer
Confidentiality using Encryption:• Multiplicative inverse:• Y * (1/Y) = 1
• y/x mod n = ?• The we must get the value of (1/X) in the modulo system.
• Example:
7/6 mod 11 = 7 * 2 mod 11 6 * ? = 1 mod 11 = 14 mod 11 = 3 6 * 2 = 12 mod
11 = 1• Example:
5/4 mod 8 = No answer Because the GCD (Greatest common Divisor) of (4,8) not equal 1
WIMAX Privacy Sub-layer
Confidentiality using Encryption:• Prime numbers:
• X mod n where (n) is a prime number
• Then all numbers below this value have a GCD = 1 with this prime number.
• Example:
• 3/5 mod 7 = (3 * 3) mod 7 = 2
WIMAX Privacy Sub-layerConfidentiality using Encryption:• Euler Totient Ф(n):
X mod n• Example:• At n = 6
• Field = { 0, 1, 2, 3, 4, 5 } numbers less than 6 {1, 5} numbers have GCD = 1 with
6
• Then, Euler Totient Ф(6) = 2
• Example:• At n = 7 Prime number
• Field = { 0, 1, 2, 3, 4, 5, 6 } numbers less than 6 { 0, 1, 2, 3, 4, 5, 6 } numbers have GCD = 1 with
7
• Then, Euler Totient Ф(7) = 6 = (n – 1)
WIMAX Privacy Sub-layerConfidentiality using Encryption:• Euler Totient Ф(n):• Note: Ф(p) * Ф(q) = (p – 1)(q – 1) at p, q are prime
numbers.
• General Formula:
a mod n = 1Example:At n = 3 , a = 2
Ф(n) = Ф(n) = n – 1 = 3 – 1 = 2.
a = 2 ^ 2 = 4
Then, 4 mod 3 = 1
Ф(n)
Ф(n)
WIMAX Privacy Sub-layerConfidentiality using Encryption:
MS 1 MS 2
Public Key (1) Public Key (2)
Secrete Key (1)
Secrete Key (2)
• Each user have Secrete Key & Public Key.• It uses the Secrete key decrypt the data sent to it encrypted with its
Public key
WIMAX Privacy Sub-layerConfidentiality using Encryption:
MS 1 MS 2
Public Key (1)Public Key (2)
Secrete Key (1)
Secrete Key (2)
1. Data encrypted with Public Key (2)
2. Data decrypted with Secrete Key (2)
• Data Encryption/decryption sequence.
WIMAX Privacy Sub-layerConfidentiality using Encryption:
• Key generation process.
1. Pick two large prime numbers P & Q (each of 512 bits).
2. Calculate N = P*Q (RSA public modulus – 1024 bits).
3. Calculate Euler Totion Ф(N) = (P – 1)(Q - 1).4. Choose (e) – Public exponent - at which GCD(e,
Ф(N) ) = 1.5. Find (d) – Secrete exponent - at which d*e = 1 mod
N.
• Then:• Public key = (e , N).• Secrete key = (d , N).
• Lets have an example . . . .
WIMAX Privacy Sub-layerConfidentiality using Encryption:
• If there is a message x , where x < N
Encryption:• Then C – encrypted message – equals:
C = x mod N
Decryption:x = C mod N
= (x mod N) mod N
= (x mod N) mod N e * d = 1 mod N
= x mod N = x x < N
e
d
de
ed
WIMAX Privacy Sub-layerAuthentication using hash message:
• Hash function is a on way function.• Hash function features:1. If x is a message ,then hash message (Y) = H(x).2. Very low collision, i.e: low Prop. to find one hash message to
different X messages.
Encryption
Plain text 1
Key Encryption
Plain text 2
Key Encryption
Plain text 3
Hash message
Key
IV
WIMAX Privacy Sub-layerAuthentication using hash message:
• WIMAX makes HMAC (Hash Message Authentication Code) using SHA-1 Algorithm.
XORXOR
XORXORMAKMAK 00000000
opad
ipad
messagemessagemessagemessageXOR outputXOR output
SHASHA
SHA outputSHA outputXOR outputXOR output
SHASHA
messagemessage
HASHHASH+
Ipad = 36 , 36 , . . ,36Opad = 5C , 5C , . . .
5C