300D SIM-grensesnitt med serveren

M

movie_freak

Guest
Hei,

Jeg står overfor følgende problem:Jeg har laget en klient program, basert på SIM300D GPRS.Det ville være mange lignende klienter som arbeider på samme tid i programmetJeg forstår at Sever Programmet skal flertrådige å motta mer enn én tilkobling om gangen, som jeg tror det er, og det er en java-basert server.

Lengden av data jeg ønsker å sende er ikke samme hver gang.Som du kanskje vet, med AT cipsend, kan jeg bare sende 1024 bytes med data om gangen.

Serveren oppfører liker denne:
(Det er ikke tegnet av meg og jeg ikke har indre kjennskap til it's implementering)

Så snart klienten starter en forespørsel for tilkoblingen serveren godtar tilkoblingen, og mottar data, men som
så snart jeg får "SEND OK", jeg får også "lukket", som betyr at serveren har lukket tilkoblingen uten utstedelse av AT Lukk

Nå i dette tilfellet hvis jeg har større data å sende jeg trenger å koble til serveren igjen og igjen og sende dataene, som jeg mener ikke er å foretrekkeJeg valgte fyren (som tegnet server koden) for å øke tiden ute eller i stedet å holde forbindelsen alltid åpen,
idet jeg mener at GPRS-tilkoblingen kan opprettholdes så lenge kunden er i nettverket og slått på, slik jeg trenger bare å se etter tilkoblingsstatusen klienten med sever og sende data ..

Så på denne måten jeg kan gi flere ved cipsend kommandoer og sende store data

Fyren sier at serveren oppretter en tunnel for hver tilsvarende klient og den må lukkes hver gang, ellers server programmet vil ikke kunne motta data med flere klienter.
Han stedet forteller meg også å endre klient programmet slik at når det er nødvendig å sende en større datamengde, sende den på et diffent portnummeret for samme server
slik at når kundene skal sende store data vil bli mottatt på andre porter og det vil serveren formålet, vil han gjennomføre nødvendig.

Så jeg vil gjerne vite om dette er en god løsning?Hvor mye er det sant og er det noen andre alternativer er tilgjengelige for å løse problemet?

Likeledes, hvis noen kan hjelpe meg å forstå, hvordan kommunikasjonen foregår på serveren slutten
Mange takk,
Surya

 
Jeg designe et lignende system som din, serveren (i Java) og GPRS-basert enhet.
Jeg tror at det beste alternativet er at GPRS enheten problemet AT Lukk, men hvis serveren har å lukke kontakten alltid avslutte dine meldinger med et '\ n' eller '\ r' karakter, er at slutten av linjen karakter for funksjonen readline som brukes i Java for å lese data fra stikkontakten strømmen og deretter kan du sende alle data før serveren lukker socket.
Du må koble til igjen og igjen fordi hver gang du åpner en tilkobling til PC allokerer minne for det, og hvis du aldri kobler du vil ha en masse tråder åpnet samtidig, og det vil oppta for mye RAM.Det beste er at hver klient kobler seg til, sende data og koble fra igjen og igjen, fordi det vil bli færre tilkoblinger og tråder åpnet samtidig være en mer effektiv løsning.

 

Welcome to EDABoard.com

Sponsor

Back
Top