Sunteți pe pagina 1din 31

Sisteme de Comunicatii

Mobile (SCMB)
- curs 7 -
Continutul prezentarii
 Transmiterea datelor in GSM
 Tipuri de servicii
 Interoperarea GSM cu alte retele pe partea de date
 Capabilitati de transport si AMSISDN
 Prelucrari de semnal necesare transmiterii datelor
 Modurile de transmitere a datelor si protocoale implicate

 Aplicatii WAP
 Stiva de protocoale WAP
 Arhitectura WAP
 Pasii realizarii unei aplicatii WAP
Servicii de date in GSM

 Servicii de transport (Bearer services):

 Faza 1: date duplex asincron/sincron la 300,


1200, 2400, 4800, 9600 bps

 Faza 2: transport semnal digital UDI


(Unrestricted Digital Signal) la 12000 bps

 Faza 2+: transmisie date la 14400 bps


Transmisia de date - arhitectura

UDI – Unrestricted Digital Information (signal) – flux digital nerestrictionat


Bearer Service Groups Tele Services
Bearer Service 2x Group Teleservice 1x Group
Data Circuit Duplex Speech Services
Asynchronous •TS 11 - Telephony
•BS 21 - 300 bits/ sec •TS12 - Emergency
•BS 22 - 1200 bits/ sec Teleservice 2x Group
•BS 23 - 75/ 1200 bits/ sec Short Message Services.
•BS 24 - 2400 bits/ sec •TS 21 - Mobile Terminating
•BS 25 - 4800 bits/ sec SMS
•BS 26 - 9600 bits/ sec •TS 22 - Mobile Originating
Bearer Service 3x Group SMS
Data Circuit Duplex •TS 23 - SMS Cell Broadcast
Synchronous Teleservice 6x Group
•BS 31 - 1200 bits/ sec Group 3 Facsimile
•BS 32 - 2400 bits/ sec •TS 61 - Alternate Speech &
•BS 33 - 4800 bits/ sec Facsimile
•BS 34 - 9600 bits/ sec •TS 62 - Automatic Group 3
Facsimile
Servicii de transport, teleservicii,
serviciide date
Servicii de date = Servicii de transport intre interfetele
TAF (Terminal Adapter Function) si IWF (Inter Working Functions)
Identificatorul AMSISDN

Rol: suplineste lipsa


indicatorului Bearer
Capability (BC) la
interfata cu PSTN
Interconectarea GSM cu alte retele
– tr. Date (1)
Interconectarea GSM cu alte
retele – tr. Date (2)
Interconectarea GSM cu alte
retele – tr. Date (3)

AS – Access Server
Protocoale implicate in transmisia
datelor
Accesul la Intranet
Prelucrari necesare in vederea
transmiterii datelor
 Sincronizarea fluxului cu ceasul GSM
 Dopare
 Conversie asincron/sincron si invers

 Adaptarea vitezei de transmisie


 Incorporarea fluxului in salve pe Um
 Adaptarea ratei in reteaua fixa
 Adaptarea la nivelul interfetei TAF

 Controlul erorilor
 FEC (Forward Error Correction)
 RLP (Radio Link Protocol), mecanism ARQ
Moduri de transmitere a datelor
 Mod T – Transparent:
 Protectie date cu FEC pe Um
 Debit si intarziere constante
 Fluxuri asincrone/sincrone 300-12000 bps
 Mod NT – Netransparent:
 FEC
 ARQ la nivelul protocolului RLP (Radio Link Protocol)
 Debit si intarziere variabile
 Echivalent cu a transmite pachete intr-o retea cu
ciomutatie de circuite
 Modul se specifica in octetul 6c al indicatorului BC
Sincronizarea
 Depinde de: modul T/NT, formatul fluxului incident

 Conexiuni T
 Circuit sincron TAF – IWF
 Bloc RA0 (Rate Adaptation 0) realizeaza conversia
asincron/sincron
 Format cadre V.110’, formarea cadrelor o face blocul RA1’
(Rate Adaptation 1’)
 Dopare + sau -, o data la 2 cadre

 Conexiuni NT
 Tr. pachete prin retea circuite, asincrona prin natura sa
 Sincronizarea se face la nivelul 2 OSI, de catre RLP
(inspirat din HDLC)
 Se formeaza cadre RLP care contin cate 4 cadre V.110’
Adaptarea
ratei: voce, fig. a)
versus date, fig. b)
Protectia la erori pe Um
 Constrangere: 456 biti/ 20 ms
 D_max = 22,8 Kbps, fara protectie, la intrarea blocului de
formare salve

 Scheme de codare FEC


 3,6Kbps: cod convolutional R = 1/6
 6Kbps: cod convolutional rata 1/3
 12Kbps: cod convolutional R = ½ cu prescurtare (punctured)

 Intretesere:
 De sub-blocuri in cadrul blocului de 456 biti
 De sub-blocuri in cadrul a 22 salve succesive
Arhitectura WAP (Wireless
Application Protocol)

Gateway WAP:
- Translatie stiva WAP – Stiva WEB (HTTP/TCP/IP)
- Transcodare automata HTML – WML/XHTML
- Comprimare pagini WML prin binarizare
Stiva WAP (1)

HTTP/TCP – performante mai slabe peste legaturi wireless


deoarece interpreteaza intarzierile variabile ca pe o congestie
si aplica mecanismele de control trafic din retelele fixe
Stiva WAP (2)
 WAE (Wireless Application Environment) – navigatorul
WML/XHTML, interpretare WML Script, WTA (Wireless
Telephony Application) ex. initiere apel, acces functii telefon

 WSP (Wireless Session Protocol) – servicii orientate pe sesiuni,


gestiunea sesiunilor utilizator (similar HTTP), gestiune date
mod push

 WTP (Wireless Transaction Protocol) – omologul TCP/UDP,


sigur/nesigur, cu/fara confirmare

 WTLS (Wireless Transport Layer Security) – gestiune


securitate, inspirat din SSL, gestiune: integritate,
confidentialitate, autentificare, protectie, suport comert
electronic

 WDP (Wireless Datagram Protocol) – protocol general de


transport, realizeaza adaptarea stivei la diferite protocoale de
nivel retea (Bearer Services)
Configuratii WAP
Arhitectura n-tier
Realizarea unei aplicatii WAP (1)
1) Analiza: ce serviciu se ofera? ce functii va
avea serviciul?
2) Design:
 Cum va arata interfata cu utilizatorul (front-
end)?
 Arhitectura: 3-tier (Prezentare, Business logic,
Data Storage)
 Clasele partii business (Servlet, JSP, ASP,
PhP, etc.)
 Clasele pentru conectorul JDBC (Baza Date)
 Design tabele baza date
Realizarea unei aplicatii WAP (2)
3) Implementare:
- Alegerea unei tehnologii (ex. Java Servlet, JSP, ASP
.NET, etc.)
- Alegerea unui mediu de lucru (IDE Eclipse, NetBeans,
etc.)
- Realizarea paginilor statice WML
- Realizarea claselor (Servlet) sau scripturi (JSP, PhP)
- Configurarea serverului/container Servlet/JSP/ASP/PhP

4) Testare:
- Emulator WAP (plug-in Firefox, Opera)
- Server HTTP instalat pe localhost (Apache Tomcat)

5) Punerea in functiune a site-ului WAP


- Server instalat pe masina cu adresa IP vizibila in Internet
Exemplu de aplicatie simpla: Login (1)
login.wml

<wml>
<card id="index" title="Login">
<p>
User: <input name="user" type="text"/>
Password: <input name="pass" type="text"/>
</p>
<p>
<do type="accept" label="OK">
<go href="http://localhost:8080/ServletTest/check.wml"
method="get">
<postfield name="user" value="$(user)"/>
<postfield name="pass" value="$(pass)"/>
</go>
</do>
</p>
</card>
</wml>
Exemplu de aplicatie simpla: Login (2)
test/LoginCheck.java

public class LoginCheck extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// debug
System.out.println("cerere GET");
// get parameters
String user = req.getParameter("user");
String pass = req.getParameter("pass");
// debug
System.out.println("User : " + user + " , pass : " + pass);
// set content type
resp.setContentType("text/vnd.wap.wml");
// get response output stream
ServletOutputStream os = resp.getOutputStream();
// check login
if (checkLogin(user, pass)) {
// OK
this.respondOK(os, user);
} else {
// Fail
this.respondFail(os);
}
}
Exemplu de aplicatie simpla: Login (3)
test/LoginCheck.java

private boolean checkLogin(String user, String pass) {


if (user.equals("gigi") && pass.equals("gugu")) {
return true;
} else {
return false;
}
}

private void respondOK(ServletOutputStream os, String user) {


// send the page line by line
try {
os.println("<?xml version=\"1.0\"?>");
os.println("<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML
1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">");
os.println("<wml>");
os.println("<card id=\"ok\" title=\"OK\">");
os.println("<p>Hello " + user + " ! </p>");
os.println("</card>");
os.println("</wml>");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Cum instalam un servlet in Tomcat?

 Recomandare:
 Utilizam
un plug-in
pentru Eclipse
 Integrare automata
cu Tomcat
 Exporta fisier .war al
aplicatiei
 UtilizamEclipse EE
si creem un proiect
de tip Dynamic Web
Configurarea servlet-ului
In /WEB-INF plasam fisierul web.xml :

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4"


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http:/java.sun.com/dtd/webapp_2_3.dtd">
<servlet>
<servlet-name>logincheck</servlet-name>
<servlet-class>test.LoginCheck</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>logincheck</servlet-name>
<url-pattern>/check.wml</url-pattern>
</servlet-mapping>
</web-app>
Bibliografie
 “Comunicatii mobile. Evolutia spre
3G”, Autor:Sorina Zahan,
Editura:Albastra

S-ar putea să vă placă și