SlideShare a Scribd company logo
1 of 15
Download to read offline
US 20100146111A1 
(19) United States 
(12) Patent Application Publication (10) Pub. No.: US 2010/0146111 A1 
Shacham et al. (43) Pub. Date: Jun. 10, 2010 
(54) 
(75) 
(73) 
(21) 
(22) 
EFFICIENT COMMUNICATION IN A 
NETWORK 
Yotam Shacham, Palo Alto, CA 
(US); Guy Ben-Artzi, Palo Alto, 
CA (US); Alexei AleXevitch, 
HertZlia (IL); Amatzia Ben-Artzi, 
Palo Alto, CA (US); Tal Lavian, 
Sunnyvale, CA (US); Alexander 
Glyakov, Petach Tikva (IL); 
Russell W. McMahon, Woodside, 
CA (US); Yehuda Levi, Rishon 
LeZion (IL) 
Inventors: 
Correspondence Address: 
CONNOLLY BOVE LODGE & HUTZ LLP 
1875 EYE STREET, N.W., SUITE 1100 
WASHINGTON, DC 20006 (US) 
Related US. Application Data 
(60) Provisional application No. 61/200, 932, ?led on Dec. 
4, 2008. 
Publication Classi?cation 
(51) Int. Cl. 
G06F 15/173 (2006.01) 
G06F 15/16 (2006.01) 
(52) Us. or. ....................................... .. 709/224; 709/247 
(57) ABSTRACT 
A connection may be established between a ?rst device and a 
second device in a network. Thereafter, the ?rst device may be 
monitored for one or more performance parameters. Subse 
quently, full state information of an application may be pro 
cessed at the ?rst device based on the performance param 
eters, and the processed full state information may be 
transmitted by the ?rst device to the second device. Thereaf 
Assignee: Real Dice Inc., Carson City, NV ter, one or more state changes of the application may be 
(US) processed at the ?rst device based on the one or more perfor 
mance parameters While the connection is active. Subse 
Appl. No.: 12/630,186 quently, one or more processed state changes of the applica 
tion may be transmitted sequentially by the ?rst device to the 
Filed: Dec. 3, 2009 second device. 
3111213 
Wm” ,MHW “WW... Wwumumuww MMMMMMMMMM MR“ 
K‘ Connect l‘; 
i 
i 
Compressed Full information State , E 
" ' ' ' 1 l 
‘ E 
Compressed State Change information i 
E 
Client , , , . E ; Lompressed btate Change Enfarmatton g ‘ Server 
1 I 
I f 
Compressed State Change information E j 
g , 
i l 
i 1 Qompressed State Change informatéon E 
l 
‘w. 1 Disconnect 2,’ 
,/ ‘I’! 
j n. , . y m W M M w m W M w 1 02a ? w m w m w M m M W m w m w I m rum ,. e’ "1 {34
Patent Application Publication Jun. 10, 2010 Sheet 1 0f 7 US 2010/0146111 A1 
f192 a 
Cient 
mzn/
Patent Application Publication Jun. 10, 2010 Sheet 2 0f 7 US 2010/0146111 Al 
c@ow5wm?3mcm2t, @NE 
@EEmE Maw.
Patent Application Publication Jun. 10, 2010 Sheet 3 0f 7 US 2010/0146111 A1 
@WaErm 
 
 
i 
i 
i 
i 
i 
i 
5 
§ 
5 
i 
i 
i 
2 
i 
i 
l 
i 
l 
I 
s‘ 
“Afi“ 
3QmEm3EmEmmQgE w 
éE2i65 2x% 
@EEg?gSsm?“ QmEQmM?EgEwmE,gW m 
wNum. cc au 
f fit;mwzilieieiai {mam
Patent Application Publication Jun. 10, 2010 Sheet 4 0f 7 US 2010/0146111 A1 
Eimm 
pammuummumwmmummmu~u~~~w~-h~_ 
“mmumg MUQCEDUNHMQ 
f 
Emma mwcw
Patent Application Publication Jun. 10, 2010 Sheet 5 0f 7 US 2010/0146111 A1 
tar? j 
“WWW__Mm‘m__“wx" 
33*“ Eaiabiigii a connecticm between ciient ami sawer 
r‘ 
4‘34 Mnnimr the ciient ‘50%’ (‘me a!’ more perfmmance parameiers 
am appiication infsrmatian 
l» 
4% X Stare perimmance parameters and app?caiim 
informa?en 
Pmcess a mi: an'formataan staie of the appiacamn 
% ransmzt the pmcesse? mi; mi'nrmatmn state a? the; 
IHGX appiicatim by tr ha chq em to the server 
i 
i 
w 
vf-m 
N 412 ~~ @ i ‘ -_ 7 
mm” x?w ~ ~~--._ ‘ a i‘ i f " - "My " Mfg/i’ 
Y’? Yea; 
‘Him ‘ I V 7' V V 
" Munimr fur gm?mmance .paramsters and state change 
 .r 
415  _ . , g - process state {mange- of the appiacamn at we CHEM 
44s  V' 1‘ Transient sequemaaiiy me processeci state change 01: we 
appiiaatian fmm the ciient m the serve; 
W‘ / N Stag ) 
$13G.‘ 4
Patent Application Publication Jun. 10, 2010 Sheet 6 0f 7 US 2010/0146111 A1 
ffmm " Stan‘: ,? 
v 
5m x R‘éB-CSWE‘ the W’QGGSESQG iuii mforma?on state 0? the 
_ appiéca?on at the sewer 
594% ' F‘msess a pmcessed mi; informatisn siate a’? the 
agapiica?on at the sewer 
 Recezva saquemia?y ‘the pruceassad staie shange a? the 
‘- appiisatimn at ‘the serve? 
‘m8  Promws the QS’GCG‘SS-Ed state change of ‘3m appiica?a? at 
We srewes" 
.--u__- 
( Sing} j}
Patent Application Publication Jun. 10, 2010 Sheet 7 0f 7 US 2010/0146111 A1 
( Start l, 
‘MMM / 
I W 
59;;  Msnimr the pmcessor usage and bandwicith 
usagea 
Ex 
is ‘the prscesssr  Yes 
{5 aunsda gbea;n dTwhicdptuh ff 
 usage <Thbw‘? / 
f 
j// e’ 
yf/ 
5G6 Qearease {he 
N0 "M compmssian 
V rati. o sc~s-_M,// 
//  V ' f, is the pa'osessor " 
= @S i ,fi mega’: Tnspu  
and bandwidih /" 
usage >Thbw? jf/ 
,/ 
 
increase the x ’/ 
mmmessisn f‘ 319 NO 
‘raiis //>V ,. f.» n12 f/  
ff’; §s ihe: presessor NQ 
< usage < Thaw 
am: bamdwidih Hf 
xxusage <Thbw ,// 
 (if/j’ 
554 XE; Yes / 
Leave the} ssmpressécm ram unchanged 
f’  W5 Stop jémwm- ------ - 
FEG. 6
US 2010/0146111 A1 
EFFICIENT COMMUNICATION IN A 
NETWORK 
CROSS-REFERENCE TO RELATED 
APPLICATION 
[0001] This application draws priority from Us. Provi 
sional Patent Application No. 61/200,932, ?led on Dec. 4, 
2008, and hereby incorporated by reference herein in its 
entirety. 
FIELD OF THE INVENTION 
[0002] Various embodiments of the invention may relate to 
communication in a netWork and more speci?cally to improv 
ing the ef?ciency of communication in a netWork. 
BACKGROUND OF THE INVENTION 
[0003] Various users across the globe communicate or per 
form various activities on computer and device netWorks. 
Moreover, the users interact With each other through the net 
Works, such as the Internet. Typically, the users use devices 
like personal computers to interact over the Internet. The 
users can interact from various Internet Websites or social 
networking sites, for example, Facebook, Myspace, Hi5, and 
Orkut etc. Recently, the development in mobile devices such 
as cell phones, smartphones and PDAs, computers, laptops 
and the like has enabled them to be used for performing 
various activities on netWorks such as the Internet. Moreover, 
the mobile devices can be used for real-time interaction With 
other users on the netWork. The interaction or communication 
can be in the form of chatting, playing interactive online 
games, broWsing, shopping, music, video, banking, business 
and the like. 
[0004] The rapid pace of innovation in technology has gen 
erated various types of devices and platforms. Moreover, the 
number of devices is increasing rapidly. For example, there 
are various operating systems available for the devices such 
as WindoWs, Linux, Macintosh, and Symbian, etc. Moreover, 
a large number of J 2ME platforms are available for the mobile 
devices such as cell phones. Furthermore, the mobile devices 
have a Wide range of capabilities in terms of screen siZe, 
screen type, screen resolution, processor, and memory etc. 
The advancement in technology has enabled multi-user inter 
action on the netWork, for example multi-player games on 
mobile devices. Moreover, With rapid decline in prices of 
hardWare, advanced and inexpensive devices are readily 
available. Furthermore, advancements in softWare, operating 
systems, and input/ output interfaces have enabled the devel 
opment of high performance media capabilities on devices. 
Interactive applications such as media games are noW being 
developed Which alloW multi-user interactions on netWorks. 
As a result, the number of users and the requirement for the 
quality of service in the netWork is increasing rapidly. 
[0005] Typically, interactive applications require constant 
communication betWeen the users. Therefore, a large amount 
of bandWidth may be required to maintain the communica 
tion. The bandWidth available on a device depends on the type 
of netWork and the hardWare or softWare of a device. For 
example, mobile netWork infrastructures such as in rural 
areas or otherWise underdeveloped areas may have less band 
Width as compared to infrastructures in developed cities or 
areas. As a result, the user With sloW netWork connection may 
experience latency in communication. Moreover, the infor 
mation to be transmitted can be limited due to a loW band 
Jun. 10,2010 
Width netWork. Therefore, in case of some applications, for 
example, competitive online games, this may result in fair 
ness issues. Interactive applications such as chatting or 
mobile games may require real time updating of information, 
Which induces latency in communication. Furthermore, the 
scalability of these multi-user applications may depend on the 
ef?ciency and quality of service of netWork communications. 
[0006] A mechanism may, therefore, desirable for ef?cient 
communication in the netWork. Moreover, it may be desirable 
for the mechanism to be scalable. 
SUMMARY 
[0007] Various embodiments of the invention may provide 
a method for ef?cient communication in a netWork. The 
method may comprise establishing a connection betWeen a 
?rst device and a second device in the netWork; monitoring 
the ?rst device for one or more performance parameters; 
processing full state information of an application at the ?rst 
device, Wherein the full state information is processed based 
on the performance parameters; transmitting the processed 
full state information of the application by the ?rst device to 
the second device; processing one or more state changes of 
the application at the ?rst device, Wherein the state changes 
are processed based on the one or more performance param 
eters, and Wherein the state changes are processed While the 
connection is active; and transmitting sequentially one or 
more processed state changes of the application by the ?rst 
device to the second device. 
[0008] Embodiments of the invention may further provide 
an apparatus for ef?cient communication in a netWork. The 
apparatus may comprise a memory con?gured to store full 
state information of an application and one or more state 
changes of the application; a monitoring module con?gured 
to monitor one or more performance parameters; an analyzer 
module con?gured to process the full state information and 
the state changes of the application based on the one or more 
performance parameters, and Wherein the state changes are 
processed While a netWork connection is active; and a trans 
mission module con?gured to: establish the connection in the 
netWork; transmit the processed full state information; and 
transmit sequentially the processed state changes 
[0009] Embodiments of the invention may further provide a 
system for e?icient communication in a netWork. The system 
may comprise means for establishing a connection betWeen a 
?rst device and a second device in the netWork; means for 
monitoring the ?rst device for one or more performance 
parameters; means for processing full state information of an 
application at the ?rst device, Wherein the full state informa 
tion is processed based on the performance parameters; 
means for transmitting the processed full state information of 
the application by the ?rst device to the second device; means 
for processing one or more state changes of the application at 
the ?rst device, Wherein the state changes are processed based 
on the one or more performance parameters, and Wherein the 
state changes are processed While the connection is active; 
and means for transmitting sequentially one or more pro 
cessed state changes of the application by the ?rst device to 
the second device. 
[0010] Embodiments of the invention may further provide a 
computer-readable medium containing instructions for per 
forming a method for ef?cient communication in a netWork. 
The methodmay comprise establishing a connectionbetWeen 
a ?rst device and a second device in the netWork; monitoring 
the ?rst device for one or more performance parameters;
US 2010/0146111Al 
processing full state information of the application at the ?rst 
device, wherein the full state information is processed based 
on the performance parameters; transmitting the processed 
full state information of the application by the ?rst device to 
the second device; processing one or more state changes of 
the application at the ?rst device, wherein the state changes 
are processed based on the one or more performance param 
eters, and wherein the state changes are processed while the 
connection is active; and transmitting sequentially one or 
more processed state changes of the application by the ?rst 
device to the second device. 
BRIEF DESCRIPTION OF THE DRAWINGS 
[0011] Having thus described various embodiments of the 
invention in general terms, reference will now be made to the 
accompanying drawings, which are not necessarily drawn to 
scale, and wherein: 
[0012] FIG. 1 is an environment where various embodi 
ments of the invention may function; 
[0013] FIG. 2 is a block diagram of an apparatus for e?i 
cient communication in a network, according to an embodi 
ment of the invention; 
[0014] FIG. 3A is a block diagram illustrating ef?cient 
communication between a client and a server in the network, 
in accordance with an embodiment of the invention; 
[0015] FIG. 3B is a block diagram illustrating ef?cient 
communication between a client and a server in a network, in 
accordance with another embodiment of the invention; 
[0016] FIG. 4 illustrates a ?owchart diagram for ef?cient 
communication in the network, in accordance with an 
embodiment of the invention; 
[0017] FIG. 5 illustrates a ?owchart diagram for ef?cient 
communication in the network, in accordance with an 
embodiment of the invention; and 
[0018] FIG. 6 illustrates a ?owchart diagram for deciding a 
compression ratio for information, in accordance with an 
embodiment of the invention. 
DETAILED DESCRIPTION OF EMBODIMENTS 
OF THE INVENTION 
[0019] Illustrative embodiments of the invention now will 
be described more fully hereinafter with reference to the 
accompanying drawings, in which some, but not all embodi 
ments of the invention are shown. Indeed, the invention may 
be embodied in many different forms and should not be 
construed as limited to the embodiments set forth herein; 
rather, these embodiments are provided so that this disclosure 
will satisfy applicable legal requirements. Like numbers refer 
to like elements throughout. 
[0020] FIG. 1 is an environment where various embodi 
ments of the invention may function. As shown, devices such 
as clients 102a-n may communicate to interact and share 
information in a network with devices such as a server 104. 
Clients 102a-n can be, but are not limited to a mobile phone, 
a laptop, a personal computer, a smartphone and the like. 
Similarly, various other devices can be connected in the net 
work through server 104. Clients 102a-n can have different 
hardware and software platforms. Examples of software plat 
forms include operating systems such as Windows, Linux, 
Macintosh, Symbian, and so forth. Moreover, clients 102a-n 
may have different hardware, such as the screen siZe, screen 
resolution, audio and video functionality, processors and so 
forth. Therefore, the applications executing on the clients 
Jun. 10,2010 
102a-n and server 104 will generally be compatible with the 
operating systems and hardware platform of these devices. 
[0021] Clients 102a-n may interact with each other through 
server 104 in real-time for activities such as chatting, playing 
games, banking and so forth. Clients 102a-n may interact 
from different types of networks. For example, client 102a 
may communicate with server 104 through a mobile network 
with a maximum bandwidth of 14.4 kbps, and client 1021) 
may communicate through an Ethernet network with a maxi 
mum bandwidth of 2 Mbps. Moreover, clients 102a-n can 
have different hardware and software capabilities. For 
example, client 102a may be a device such as a mobile phone 
and client 1021) may be device such as a personal computer. 
Therefore, the communication between clients 102a-n may 
generally be based on various network and device perfor 
mance parameters. Examples of the performance parameters 
may include, but are not limited to, the bandwidth of the 
network, the type of network, communication protocols used, 
latency in communication, a user’s online time, processing 
power of clients 102, processor usage of clients 102, memory 
of clients 102, and other parameters such as electronics, bat 
teries, screen, radio, communications of clients 102 and so 
forth. 
[0022] Interactive applications may often require a large 
amount of real-time information transfer between clients 102 
and server 104. In such cases, a lot of network bandwidth may 
be required to avoid latency in the network. For example, in 
case of interactive multi-player games, real-time information 
may be transferred regarding the status of the player, statistics 
of the game, state of the game, game data and so forth. 
Typically, in network communication, clients 102 connect to 
server 104, and thereafter the clients 102 and server 104 pass 
the data to one another, until the connection is closed. For 
example, in case of an online game, client 102 and server 104 
can regularly exchange the complete information state of the 
game or the user. The network traf?c in this case can be 
de?ned as: N><STATE, where N is number of operations and 
STATE is information that is large enough to describe an 
information state of a user. The user information state can be 
for example, but not limited to, joined the game room, left the 
game room, changed a position in the game and many other 
states possible in case of a game. However, a lot of bandwidth 
may be required to transfer this information regularly, which 
may lead to ine?iciency of the network bandwidth. 
[0023] Therefore, mechanisms may be used to improve the 
e?iciency by providing more information on the same band 
width of the network. However, a large Central Processing 
Unit (CPU) or processor, memory and more complex logic 
may be required to enable ef?cient communication in the 
network. The processor usage of a device can be offset by the 
use of additional memory in case of real-time applications. 
For example, the information that is to be processed can be 
cached before being processed. As a result, more information 
can be processed; however, more processing usage may be 
required to process the cached data. Similarly, in case the 
processing usage of the device is high, then less data can be 
used for processing. Therefore, various performance param 
eters of clients 102 or server 104 may be analyZed and an 
optimum value selected to make e?icient use of the network 
bandwidth. 
[0024] FIG. 2 is a block diagram ofa system 200 for e?i 
cient communication in the network. System 200 may func 
tion to manage the bandwidth for communication in the net 
work. In an embodiment of the invention, system 200 can be
US 2010/0146111Al 
implemented as hardware, software or ?rmware on devices 
such as clients 102a-n and server 104. In an embodiment of 
the invention, system 200 is an application executing on cli 
ents 102a-n and server 104. 
[0025] A real-time application can be executed on client 
10211. For example, the real-time application can be an online 
computer game. In this case, client 102a may communicate 
regularly with server 104 for game information and other 
services. In an embodiment of the invention, server 104 is a 
game server. Client 102a can have other applications execut 
ing along with the online computer game. The execution of 
the application may require usage of network bandwidth for 
transmission of game information. Further, the application 
may require usage of a processor of client 10211 for processing 
the application information. Therefore, the performance of 
client 102a may need to be monitored to enable ef?cient 
communication on the network. The application executing on 
client 102a can include various information states. For 
example, in case of an online multi-user game or a chat 
application, full state information of the application may 
include, but is not limited to, the details regarding the Internet 
Protocol (IP) addresses of all the users connected, server 
address, Graphical User Interface (GUI) data of the applica 
tion, number of users connected, a stage of user, user mes 
sages, the state change of the user and so forth. The state 
change can be, for example, a move taken by the user in an 
online game, a new message sent by the user, a presence 
message change of the user, or any other change based on the 
type of application. For example, the state change in case of 
an online computer game canbe: a user joined the game room, 
left the game room, changed a position in the game and many 
other states possible in case of a game. The full state infor 
mation of the application can include a large amount of data 
and may require substantial network bandwidth. However, 
the state change information may require much lower net 
work bandwidth than the full state information. 
[0026] System 200 may include a memory 202 to store the 
performance parameters of a client 102a and application 
information. Examples of memory 202 include, but are not 
limited to, a Random Access Memory (RAM), a Read Only 
Memory (ROM) and so forth. System 200 may include a 
monitoring module 204 for monitoring the performance 
parameters of a client 102a and application information. 
Monitoring module 202 may monitor the network and client 
10211 to gather data that may include, but which is not limited 
to, the type of network, amount of information to be trans 
mitted, type of information to be transmitted, total and avail 
able bandwidth of the network, network capacity ratio, capac 
ity of processor and/ or processor usage. The network capacity 
ratio can be de?ned as a ratio of siZe of the information to be 
transmitted to an available bandwidth of the network. Further, 
monitoring module 204 may monitor the application to gather 
the application information such as full state information 
and/ or state changes. Monitoring module 204 sends the moni 
tored information to memory 202 for storage. In an embodi 
ment of the invention, monitoring module 204 monitors client 
102a regularly after a predetermined time period. In another 
embodiment of the invention, monitoring module 204 moni 
tors client 10211 in real-time. Monitoring module 204 can be 
implemented as a processor, software, ?rmware or a combi 
nation thereof. 
[0027] An analyZer module 206 may process the applica 
tion information stored in memory 202.AnalyZer module 206 
may process the full information state and/or state changes of 
Jun. 10,2010 
the application based on the performance parameters moni 
tored by monitoring module 204. In an embodiment of the 
invention, analyZer module 206 compresses the application 
information. In another embodiment of the invention, ana 
lyZer module 206 decompresses the application information. 
For example, analyZer module 206 may use compression 
algorithms such as ZIP to compress or decompress the infor 
mation. In an embodiment of the invention, analyZer module 
206 processes the full information state once on establishing 
the connection, and thereafter only the state changes are 
processed. The state changes may be processed sequentially 
as they are monitored by monitoring module 204. AnalyZer 
module 206 may select the information to be transmitted by 
the client 102a based on the state of network connection and 
state of the application. For example, processed full state 
information of the application may be transmitted once after 
the connection between client 102a and server 104 is estab 
lished. Similarly, only the processed state changes may be 
transmitted after the transmission of the full state informa 
tion. Moreover, the analyZer module 206 may decide when to 
stop the transmission of the application information. Various 
embodiments of processes relating to transmitting the infor 
mation are explained in detail in conjunction with FIGS. 3A, 
3B, 4 and 5. 
[0028] The application information processed by the ana 
lyZer module 206 may be forwarded to a transmission module 
208 for transmitting to server 104. In an embodiment of the 
invention, analyZer module 206 may signal transmission 
module 208 to receive or transmit the information. Further, 
transmission module 208 may establish a connectionbetween 
client 102a and server 104. In an embodiment of the inven 
tion, transmission module 208 may use transmission proto 
cols such as HTTP, TCP, UDP, HTTPS, SIP, or other proto 
cols for transmitting the data. In an embodiment of the 
invention, transmission module 208 selects the protocol 
based on the type of network. In another embodiment of the 
invention, transmission module 208 selects the protocol 
based on the network parameters and device resources. For 
example, transmission module 208 may use tunneling to send 
data in case the network does not support a particular proto 
col. For example, HTTP, FTP, SSH protocols can be encap 
sulated with a protocol supported by mobile phone network 
such as TCP. 
[0029] FIG. 3A is a block diagram illustrating ef?cient 
communication between client 102a and server 104 in the 
network, in accordance with an embodiment of the invention. 
As discussed above, typically, in network communication, a 
client connects to a server and thereafter the client and the 
server pass the data to one another, until one of the two closes 
the connection or the application is closed. For example, in 
case of an online game, the client and the server may 
exchange the complete state of the game or the user to the 
server. Therefore, the network tra?ic in this case can be 
de?ned as: N><STATE, where N is number of operations and 
STATE is information that is large enough to describe the user 
state. 
[0030] In the embodiment shown in FIG. 3A, client 102a 
connects to server 104 and subsequently transfers the full 
state information of the application. Block 302A depicts the 
communication between client 102a and server 104, in an 
embodiment of the invention. Thereafter, client 102a and 
server 104 communicate sequentially only the changes or 
differences in the states, and not the full state information of 
the application. For example, in case of an online game, client
US 2010/0146111 A1 
102a may transmit only the change in the user position, and 
not the complete game state, to server 104. In this case, the 
netWork tra?ic can be de?ned as: 
STATE+(N— l)><DIFFERENCE 
Where N is number of operations, STATE is information that 
is large enough to describe the application state, and DIF 
FERENCE is information that is large enough to describe a 
change in application state. In an embodiment of the inven 
tion, the siZe of DIFFERENCE is less than the siZe of STATE. 
As a result, much less information may need to be transmitted 
on the netWork as compared to the typical netWork commu 
nication. 
[0031] FIG. 3B is a block diagram illustrating communica 
tion betWeen client 102a and server 104 in the netWork, in 
accordance With another embodiment of the invention. As 
shoWn in FIG. 3B, the information to be transmitted in the 
netWork is processed. Block 302B depicts the communica 
tion betWeen client 102a and server 104, in an embodiment of 
the invention. Client 102a connects to server 104 and trans 
mits the processed full state of the application in a com 
pressed format. Thereafter, the processed changes or differ 
ences in the states are shoWn being passed sequentially in a 
compressed format. In this case, the total netWork tra?ic can 
be de?ned as: 
K><(STATE+(N—1)xDIFFERENCE) 
Where N is number of operations, STATE is information that 
is large enough to describe the application state, and DIF 
FERENCE is information that is large enough to describe a 
change in application state, and K is a compression ratio, 
Where K is a real number less than 1. The compression ratio 
can be de?ned as the ratio of the siZe of compressed informa 
tion to the siZe of uncompressed information. As a result, 
further reduction in netWork tra?ic may be achieved, as com 
pared to the netWork communication discussed in conjunc 
tion With FIG. 3A. 
[0032] Various algorithms and available compression stan 
dards can be used to compress and transmit the information. 
In an embodiment of the invention, client 102a and server 104 
can agree to use meta protocols to optimiZe the siZe of trans 
ferred information. Therefore, ef?ciency of the existing band 
Width availability can be increased. In another embodiment of 
the invention, a compression protocol such as ZIP is used to 
compress the data. The amount of compression of the data can 
be decided based on various parameters such as processor 
usage, latency, total netWork bandWidth, total used band 
Width, user statistics such as time spent online, use of com 
munication functionalities, etc. In an embodiment of the 
invention, a threshold value may be decided for each of the 
maximum processor usage and maximum alloWed bandWidth 
usage. The threshold values are generally less than 100% for 
processor usage and bandWidth usage, in an embodiment of 
the invention. The algorithm that may be used by analyZer 
module 206 for deciding compression ratio is explained in 
detail in conjunction With FIG. 6. 
[0033] In an embodiment of the invention, clients 102a-n 
interact through server 104, therefore, the application state is 
transmitted only once to server 104 and subsequently trans 
ferred to each of clients 102a-n. As a result, client 102a 
transmitting the update is not required to transmit the infor 
mation to all the other clients in the netWork, and bandWidth 
can be saved. For example, in case of an online card game, 
When a user on client 102a changes the position of his card, 
the information is transmitted to server 104. Subsequently, 
Jun. 10,2010 
server 104 transmits the position to other clients 102b-n on 
the netWork. Therefore, client 10211 is not required to connect 
to each of the other clients 102b-n directly to transmit the 
information. As a result, the netWork bandWidth may be con 
served. 
[0034] FIG. 4 illustrates a ?owchart diagram for ef?cient 
communication in the netWork, in accordance With an 
embodiment of the invention. A connection is established 402 
betWeen client 102a server 104 for communication over the 
netWork. In an embodiment of the invention, client 102a 
communicates With server 1 04 to transfer information regard 
ing the application. At 404, client 102a and/or the netWork 
may be monitored to gather information related to perfor 
mance parameters, and the application information may be 
obtained by monitoring module 204. Thereafter, the perfor 
mance parameters and the application information may be 
stored 406, e.g., in memory 202. In an embodiment of the 
invention, the application information can be full state infor 
mation or information regarding the state changes. 
[0035] At 408, the full state information may be processed 
based on the parameters by processor 206. AnalyZer module 
206 may compress the information. The compression ratio of 
the information may be based on parameters such as proces 
sor usage and/or bandWidth available on the netWork. An 
exemplary process of deciding the compression ratio is 
explained in detail in conjunction With FIG. 6. In an embodi 
ment of the invention, the compression ratio of the informa 
tion can be updated in real-time based on information gath 
ered by monitoring module 204. 
[003 6] In an embodiment of the invention, analyZer module 
206 may also be used to decompress information (e.g., infor 
mation received in compressed form). For example, the infor 
mation received from server 104 at client 102a may be 
decompressed. 
[0037] Returning to FIG. 4, subsequent to 408, the pro 
cessed information may be transmitted by transmission mod 
ule 208, at 410. In an embodiment of the invention, the pro 
cessed full state information may be transmitted based on the 
type of the netWork and the protocols supported by the net 
Work. 
[0038] At 412, it is determined Whether the connection 
betWeen client 102a and server 104 is active. In case the 
connection is active, then the state change of the application 
is monitored 414. In an embodiment of the invention, the state 
change may be stored in memory 202. Subsequently, at 416, 
the state change may be processed by analyZer module 206. 
The state change may be compressed by analyZer module 206 
based on the performance parameters. Thereafter, the pro 
cessed state change information may be transmitted 418, e. g., 
by transmission module 208 to server 104. The state changes 
may be monitored, processed and transmitted until the con 
nection is closed. 
[0039] FIG. 5 illustrates a ?owchart diagram for ef?cient 
communication in the netWork, in accordance With another 
embodiment of the invention. At 502, processed full informa 
tion state of the application may be received at server 104 
from client 10211. The processed full information state may be 
received by a transmission module 208. In an embodiment of 
the invention, processed full state information may be 
received at client 10211 from server 104. Thereafter, at 504 the 
processed full information state of the application may be 
processed at server 104. In an embodiment of the invention, 
the processed full information state is decompressed at server 
104. The processed full information state may be, processed
US 2010/0146111A1 
by analyzer module 206. In an embodiment of the invention, 
the processed full state information may be processed at 
client 102a. At 506, processed state changes may be received 
sequentially at server 104. The processed state changes may 
be received by transmission module 208. Subsequently, the 
processed state changes may be processed at server 104, e. g., 
by analyZer module 206. In an embodiment of the invention, 
the processed state changes are decompressed at server 104. 
In an embodiment of the invention, the processed state 
changes are processed at client 102a. 
[0040] The process is explained above to be executing at 
server 104 for the purpose of clarity, and it should be apparent 
to a person skilled in the art that the processes can be per 
formed at client 102a-n and are not limited to server 104. That 
is, processes similar to those shoWn in and described With 
respect to FIGS. 4 and 5 may be used for communications in 
either or both directions betWeen clients 102a-n and server 
104. 
[0041] FIG. 6 illustrates a ?owchart diagram for deciding 
the compression ratio for information, in accordance With an 
embodiment of the invention. The communication in the net 
Work can be made ef?cient by managing the bandWidth and 
processor usage. Analyzer module 206 may compress infor 
mation to be transmitted on the netWork to improve the e?i 
ciency of communication. The compression ratio of the infor 
mation may be decided based on the parameters such as 
processor usage and/ or bandWidth usage. 
[0042] In an embodiment of the invention, a prede?ned 
processor usage ‘Thcpu’ is de?ned for the maximum alloWed 
processor usage. Similarly, a prede?ned netWork capacity 
ratio ‘Thbw’ is decided for the maximum alloWed bandWidth 
usage. The netWork capacity ratio is de?ned as the ratio of 
information siZe to an available bandWidth of the netWork. 
The values of Thcpu and Th17W may be expressed as real num 
bers less than 1, in an embodiment of the invention. These 
may correspond to percentages of total processor availability 
and total available bandWidth, respectively. 
[0043] At 602, the processor usage and the bandWidth 
usage may be monitored by monitoring module 204. There 
after, at 604, if the current processor usage is higher than 
Thcpu and current bandWidth usage is less than Thbw, then at 
606, the compression ratio may be decreased. In case the 
conditions at 604 are not met, the process proceeds to 608. At 
608, if the actual bandWidth is higher than Th17W and the actual 
processor usage is loWer than Thcpu, then at 610 the compres 
sion ratio may be decreased. Therefore, a tradeoff is done 
betWeen the processor usage and available bandWidth to 
adjust compression of the information. 
[0044] In case the conditions at 608 are not met, the process 
proceeds to 612. At 612, ifthe actual bandWidth usage is less 
than Th17W and actual processor usage is loWer than Thcpu, then 
at 614, the compression ratio may be left unchanged. In an 
embodiment of the invention, a linear optimiZation algorithm 
may be used to optimiZe both processor usage and bandWidth 
usage. As a result, ef?ciency of communication in the net 
Work may be improved. 
[0045] Embodiments of the invention are described above 
With reference to block diagrams and schematic illustrations 
of methods and systems according to embodiments of the 
invention. It Will be understood that each block of the dia 
grams and combinations of blocks in the diagrams can be 
implemented by computer program instructions. These com 
puter program instructions may be loaded onto one or more 
general purpose computers, special purpose computers, or 
Jun. 10,2010 
other programmable data processing apparatus or computing 
devices to produce machines, such that the instructions Which 
execute on the computers or other programmable data pro 
cessing apparatus create means for implementing the func 
tions speci?ed in the block or blocks. Such computer program 
instructions may also be stored in a computer-readable 
medium, such as a memory, that can direct a computing 
device or other programmable data processing apparatus to 
function in a particular manner, such that the instructions 
stored in the computer-readable medium produce an article of 
manufacture including instruction means that implement the 
function speci?ed in the block or blocks. Furthermore, such 
computer program instructions may be provided for doWn 
load via a netWork and/ or may be doWnloaded via a netWork. 
[0046] While the invention has been described in connec 
tion With What is presently considered to be the most practical 
and various embodiments, it is to be understood that the 
invention is not to be limited to the disclosed embodiments, 
but on the contrary, is intended to cover various modi?cations 
and equivalent arrangements included Within the spirit and 
scope of the appended claims. 
[0047] This Written description uses examples to disclose 
the invention, including the best mode, and also to enable any 
person skilled in the art to practice the invention, including 
making and using any devices or systems and performing any 
incorporated methods. The patentable scope the invention is 
de?ned in the claims, and may include other examples that 
occur to those skilled in the art. Such other examples are 
intended to be Within the scope of the claims if they have 
structural elements that do not differ from the literal language 
of the claims, or if they include equivalent structural elements 
With insubstantial differences from the literal languages of 
the claims. 
We claim: 
1. A communication method comprising: 
establishing a connection betWeen the ?rst device and a 
second device of the netWork; 
monitoring the ?rst device for one or more performance 
parameters; 
processing full state information of an application at the 
?rst device, Wherein the full state information is pro 
cessed based on the performance parameters; 
transmitting the processed full state information of the 
application by the ?rst device to the second device; 
processing one or more state changes of the application at 
the ?rst device, Wherein the state changes are processed 
based on the one or more performance parameters, and 
Wherein the state changes are processed While the con 
nection is active; and 
transmitting sequentially one or more processed state 
changes of the application by the ?rst device to the 
second device. 
2. The method of claim 1, Wherein the performance param 
eters comprise processor usage of the ?rst device. 
3. The method of claim 1, Wherein the performance param 
eters comprise available bandWidth of the netWork at the ?rst 
device. 
4. The method of claim 1, Wherein the performance param 
eters comprise bandWidth usage of the netWork at the ?rst 
device. 
5. The method of claim 1, Wherein the performance param 
eters comprise latency in communication betWeen the ?rst 
device and the second device.
US 2010/0146111141 
6. The method of claim 1, wherein the performance param 
eters comprise usage statistics of a user at the ?rst device. 
7. The method of claim 1, Wherein the performance param 
eters comprise a netWork capacity ratio. 
8. The method of claim 7, Wherein the netWork capacity 
ratio comprises a ratio of information siZe to an available 
bandWidth of the netWork. 
9. The method of claim 1, Wherein the application com 
prises an online game. 
10. The method of claim 1, Wherein the application com 
prises an online chat application. 
11. The method of claim 1, Wherein the processing the full 
state information of the application comprises compressing 
the full state information. 
12. The method of claim 11, Wherein the processing the full 
state information of the application further comprises: 
increasing a compression ratio When a processor usage is 
loWer than a prede?ned processor usage and a netWork 
capacity is greater than a prede?ned netWork capacity 
ratio; and 
decreasing the compression ratio When the processor usage 
is greater than the prede?ned processor usage and the 
netWork capacity is loWer than the prede?ned netWork 
capacity ratio. 
13. The method of claim 1, Wherein the processing the state 
changes of the application comprises compressing the state 
changes. 
14. The method of claim 13, Wherein the processing the 
state changes of the application comprises: 
increasing a compression ratio When a processor usage is 
loWer than a prede?ned processor usage and a netWork 
capacity is greater than a prede?ned netWork capacity 
ratio; and 
decreasing the compression ratio When the processor usage 
is greater than the prede?ned processor usage and the 
netWork capacity is loWer than the prede?ned netWork 
capacity ratio. 
15. The method of claim 1 further comprising: 
receiving the processed full state information of the appli 
cation at the second device from the ?rst device; 
processing the processed full state information of the appli 
cation at the second device. 
receiving sequentially the one or more processed state 
changes of the application at the second device from the 
?rst device; and 
processing the processed one or more state changes of the 
application at the second device, Wherein the processed 
state changes are processed While the connection is 
active. 
16. The method of claim 15, Wherein the processing the 
processed full state information of the application comprises 
decompressing the processed full state information. 
17. The method of claim 15, Wherein the processing the 
processed state changes of the application comprises decom 
pressing the processed state changes. 
18. The method of claim 1 further comprising storing the 
full state information of the application, the state changes of 
the application and the performance parameters. 
19. The method of claim 1, further comprising doWnload 
ing instructions that, if executed by a computing device, cause 
the computing device to implement at least the monitoring, 
processing full state information, and processing one or more 
state changes. 
Jun. 10,2010 
20. The method of claim 1, further comprising providing 
for doWnload instructions that, if executed by a computing 
device, cause the computing device to implement at least the 
monitoring, processing full state information, and processing 
one or more state changes. 
21. An apparatus for communication in a netWork, the 
apparatus comprising: 
memory con?gured to store full state information of an 
application and one or more state changes of the appli 
cation; 
a monitoring module con?gured to monitor one or more 
performance parameters; 
an analyZer module con?gured to process the full state 
information and the state changes of the application 
based on the one or more performance parameters, and 
Wherein the state changes are processed While a netWork 
connection is active; and 
a transmission module con?gured to: 
establish the connection in the netWork; 
transmit the processed full state information; and 
transmit sequentially the processed state changes. 
22. The apparatus of claim 21, Wherein the performance 
parameters comprise a processor usage. 
23. The apparatus of claim 21, Wherein the performance 
parameters comprise an available bandWidth of the netWork. 
24. The apparatus of claim 21, Wherein the performance 
parameters comprise a bandWidth usage of the netWork. 
25. The apparatus of claim 21, Wherein the performance 
parameters comprise a usage statistics of a user. 
26. The apparatus of claim 21, Wherein the performance 
parameters comprise a netWork capacity ratio. 
27. The system of claim 21, Wherein the netWork capacity 
ratio comprises a ratio of information siZe to an available 
bandWidth of the netWork. 
28. The apparatus of claim 21, Wherein the application 
comprises an online game. 
29. The apparatus of claim 21, Wherein the application 
comprises an online chat application. 
30. The apparatus of claim 21, Wherein the analyZer mod 
ule is con?gured to compress the full state information and 
the one or more state changes of the application. 
31. The apparatus of claim 21, Wherein the analyZer mod 
ule is con?gured to decompress the full state information and 
the one or more state changes of the application. 
32. The apparatus of claim 21, Wherein the analyZer mod 
ule is further con?gured to: 
increase a compression ratio When a processor usage is 
loWer than a prede?ned processor usage and a netWork 
capacity is greater than a prede?ned netWork capacity 
ratio; and 
decrease the compression ratio When the processor usage is 
greater than the prede?ned processor usage and the net 
Work capacity is loWer than the prede?ned netWork 
capacity ratio. 
33. The apparatus of claim 21, Wherein the transmission 
module is further con?gured to receive processed full state 
information of the application and processed state changes of 
the application. 
34. The apparatus of claim 21, Wherein the analyZer mod 
ule is further con?gured to decompress compressed informa 
tion received by the apparatus. 
35. A system for e?icient communication in a netWork, the 
system comprising:
US 2010/0146111141 
means for establishing a connection between a ?rst device 
and a second device in the network; 
means for monitoring the ?rst device for one or more 
performance parameters; 
means for processing a full state information of the appli 
cation at the ?rst device, Wherein the full state informa 
tion is processed based on the performance parameters; 
means for transmitting the processed full state information 
of the application by the ?rst device to the second device; 
means for processing one or more state changes of the 
application at the ?rst device, Wherein the state changes 
are processed based on the one or more performance 
parameters, and Wherein the state changes are processed 
While the connection is active; and 
means for transmitting sequentially one or more processed 
state changes of the application by the ?rst device to the 
second device. 
36. The system of claim 35, Wherein the means for pro 
cessing comprises means for compressing the full state infor 
mation and the state changes of the application. 
37. The system of claim 35, Wherein the means for pro 
cessing comprises means for decompressing the full state 
information and the state changes of the application. 
38. The system of claim 35, Wherein the means for pro 
cessing further comprises: 
means for increasing a compression ratio When a processor 
usage is loWer than a prede?ned processor usage and a 
netWork capacity is greater than a prede?ned netWork 
capacity ratio; and 
means for decreasing the compression ratio When the pro 
cessor usage is greater than the prede?ned processor 
usage and the netWork capacity is loWer than the pre 
de?ned netWork capacity ratio. 
39. The system of claim 35, Wherein the means for trans 
mitting further comprising means for receiving the processed 
full state information of the application and the processed 
state changes of the application. 
40. A computer-readable medium containing instructions 
that, if executed by a computing device, cause the computing 
device to implement a method comprising: 
establishing a connection betWeen a ?rst device, including 
the computing device, and a second device in the net 
Work; 
monitoring the ?rst device for one or more performance 
parameters; 
processing full state information of an application at the 
?rst device, Wherein the full state information is pro 
cessed based on the performance parameters; 
transmitting the processed full state information of the 
application by the ?rst device to the second device; 
Jun. 10,2010 
processing one or more state changes of the application at 
the ?rst device, Wherein the state changes are processed 
based on the one or more performance parameters, and 
Wherein the state changes are processed While the con 
nection is active; and 
transmitting sequentially one or more processed state 
changes of the application by the ?rst device to the 
second device. 
41. The computer-readable medium of claim 40, Wherein 
the processing comprises compressing the full state informa 
tion and the state changes of the application. 
42. The computer-readable medium of claim 40, Wherein 
the processing comprises decompressing the processed full 
state information and the processed state changes of the appli 
cation. 
43. The computer-readable medium of claim 40, Wherein 
the processing further comprises: 
increasing a compression ratio When a processor usage is 
loWer than a prede?ned processor usage and a netWork 
capacity is greater than a prede?ned netWork capacity 
ratio; and 
decreasing the compression ratio When the processor usage 
is greater than the prede?ned processor usage and the 
netWork capacity is loWer than the prede?ned netWork 
capacity ratio. 
44. The computer-readable medium of claim 40, Wherein 
the application comprises an online game. 
45. The computer-readable medium of claim 40, Wherein 
the application comprises an online chat application. 
46. A communication method comprising: 
receiving, by a ?rst device of a netWork, information from 
a second device of the netWork; 
processing the information to obtain full state information 
corresponding to an application; 
receiving, by the ?rst device, at least one subsequent infor 
mation transmission from the second device; and 
processing the at least one subsequent information trans 
mission to obtain state change information relating to 
the application. 
47. The method of claim 46, Wherein each of processing the 
information and processing the at least one subsequent infor 
mation transmission comprises performing data decompres 
sion, Wherein the information and the at least one sub sequent 
information transmission Were compressed prior to transmis 
sion using compression based on one or more performance 
parameters determined for the second device. 
48. The method of claim 47, Wherein a compression ratio of 
the compression is adaptive based on the one or more perfor 
mance parameters.

More Related Content

Viewers also liked

3.malaysian studies
3.malaysian studies3.malaysian studies
3.malaysian studiesNo Target
 
Konflik persempadanan ( pulau ligitan dan pulau sipadan)
Konflik persempadanan ( pulau ligitan dan pulau sipadan)Konflik persempadanan ( pulau ligitan dan pulau sipadan)
Konflik persempadanan ( pulau ligitan dan pulau sipadan)Alecis Alex
 
Isu pemilikan pulau_batu_puteh
Isu pemilikan pulau_batu_putehIsu pemilikan pulau_batu_puteh
Isu pemilikan pulau_batu_putehJemindar Ab Kadir
 
Malaysian studies slides
Malaysian studies slidesMalaysian studies slides
Malaysian studies slidesMat Yenkei
 
Chapter 9 - 1965 Singapore's Separation from Malaysia
Chapter 9 - 1965  Singapore's  Separation from MalaysiaChapter 9 - 1965  Singapore's  Separation from Malaysia
Chapter 9 - 1965 Singapore's Separation from MalaysiaIrving Quah
 
The spratly island dispute
The spratly island disputeThe spratly island dispute
The spratly island disputeKalvin Romana
 
Malaysia powerpoint show
Malaysia powerpoint showMalaysia powerpoint show
Malaysia powerpoint showcarrieanne01
 
The Early History of Malaysia
The Early History of MalaysiaThe Early History of Malaysia
The Early History of Malaysiaandymui
 
Chapter 6 - Diplomacy and Deterrance
Chapter 6 - Diplomacy and Deterrance Chapter 6 - Diplomacy and Deterrance
Chapter 6 - Diplomacy and Deterrance earlgreytea
 
South China Sea Dispute
South China Sea DisputeSouth China Sea Dispute
South China Sea DisputeKumar Rajgeet
 
Malaysia presentation
Malaysia presentation Malaysia presentation
Malaysia presentation khalid shah
 
Sec 2 History Chapter 9
Sec 2 History Chapter 9Sec 2 History Chapter 9
Sec 2 History Chapter 9earlgreytea
 

Viewers also liked (18)

3.malaysian studies
3.malaysian studies3.malaysian studies
3.malaysian studies
 
Konflik persempadanan ( pulau ligitan dan pulau sipadan)
Konflik persempadanan ( pulau ligitan dan pulau sipadan)Konflik persempadanan ( pulau ligitan dan pulau sipadan)
Konflik persempadanan ( pulau ligitan dan pulau sipadan)
 
Isu pemilikan pulau_batu_puteh
Isu pemilikan pulau_batu_putehIsu pemilikan pulau_batu_puteh
Isu pemilikan pulau_batu_puteh
 
Malaysian studies
Malaysian studiesMalaysian studies
Malaysian studies
 
Malaysian studies slides
Malaysian studies slidesMalaysian studies slides
Malaysian studies slides
 
PROJECT PROPOSAL 1 OIL AND GAS
PROJECT PROPOSAL 1 OIL AND GASPROJECT PROPOSAL 1 OIL AND GAS
PROJECT PROPOSAL 1 OIL AND GAS
 
Spratly Islands
Spratly IslandsSpratly Islands
Spratly Islands
 
Chapter 9 - 1965 Singapore's Separation from Malaysia
Chapter 9 - 1965  Singapore's  Separation from MalaysiaChapter 9 - 1965  Singapore's  Separation from Malaysia
Chapter 9 - 1965 Singapore's Separation from Malaysia
 
Malaysia
MalaysiaMalaysia
Malaysia
 
The spratly island dispute
The spratly island disputeThe spratly island dispute
The spratly island dispute
 
The South China Sea Dispute
The South China Sea DisputeThe South China Sea Dispute
The South China Sea Dispute
 
Malaysia powerpoint show
Malaysia powerpoint showMalaysia powerpoint show
Malaysia powerpoint show
 
The Early History of Malaysia
The Early History of MalaysiaThe Early History of Malaysia
The Early History of Malaysia
 
Chapter 6 - Diplomacy and Deterrance
Chapter 6 - Diplomacy and Deterrance Chapter 6 - Diplomacy and Deterrance
Chapter 6 - Diplomacy and Deterrance
 
South China Sea Dispute
South China Sea DisputeSouth China Sea Dispute
South China Sea Dispute
 
Malaysia presentation
Malaysia presentation Malaysia presentation
Malaysia presentation
 
Sec 2 History Chapter 9
Sec 2 History Chapter 9Sec 2 History Chapter 9
Sec 2 History Chapter 9
 
Malaysia
MalaysiaMalaysia
Malaysia
 

Similar to Efficient communication in a network

Translation of programming code
Translation of programming codeTranslation of programming code
Translation of programming codeTal Lavian Ph.D.
 
Method and apparatus for live streaming media replication in a communication ...
Method and apparatus for live streaming media replication in a communication ...Method and apparatus for live streaming media replication in a communication ...
Method and apparatus for live streaming media replication in a communication ...Tal Lavian Ph.D.
 
Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...
Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...
Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...Waqas Tariq
 
Platform-independent application development framework
Platform-independent application development frameworkPlatform-independent application development framework
Platform-independent application development frameworkTal Lavian Ph.D.
 
HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2Charles Chang
 
HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2HermesDDS
 
Method and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network elementMethod and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network elementTal Lavian Ph.D.
 
Extensible resource messaging between user applications and network elements ...
Extensible resource messaging between user applications and network elements ...Extensible resource messaging between user applications and network elements ...
Extensible resource messaging between user applications and network elements ...Tal Lavian Ph.D.
 
Spirent's Study on Battery life Competition: Samsung S5 vs. S4
Spirent's Study on Battery life Competition: Samsung S5 vs. S4Spirent's Study on Battery life Competition: Samsung S5 vs. S4
Spirent's Study on Battery life Competition: Samsung S5 vs. S4Sailaja Tennati
 
Internet of Things.pdf
Internet of Things.pdfInternet of Things.pdf
Internet of Things.pdfsateeshka
 
Azure WP7 fire starter
Azure WP7 fire starterAzure WP7 fire starter
Azure WP7 fire starterSam Basu
 
Methods and apparatus for automatic translation of a computer program languag...
Methods and apparatus for automatic translation of a computer program languag...Methods and apparatus for automatic translation of a computer program languag...
Methods and apparatus for automatic translation of a computer program languag...Tal Lavian Ph.D.
 
Method and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switchMethod and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switchTal Lavian Ph.D.
 
Semantic open io t service platform technology
Semantic open io t service platform technologySemantic open io t service platform technology
Semantic open io t service platform technologyPoornima E.G.
 
Attobahn_Presentation_redesigned_final
Attobahn_Presentation_redesigned_finalAttobahn_Presentation_redesigned_final
Attobahn_Presentation_redesigned_finalDarryl Gray
 
Method and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network elementMethod and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network elementTal Lavian Ph.D.
 
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...ijwmn
 
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...ijwmn
 

Similar to Efficient communication in a network (20)

Translation of programming code
Translation of programming codeTranslation of programming code
Translation of programming code
 
US20140379944.pdf
US20140379944.pdfUS20140379944.pdf
US20140379944.pdf
 
Method and apparatus for live streaming media replication in a communication ...
Method and apparatus for live streaming media replication in a communication ...Method and apparatus for live streaming media replication in a communication ...
Method and apparatus for live streaming media replication in a communication ...
 
US20080313598
US20080313598US20080313598
US20080313598
 
Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...
Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...
Mobile Monitoring System: A Convenient Solution for Reducing Cost of Producin...
 
Platform-independent application development framework
Platform-independent application development frameworkPlatform-independent application development framework
Platform-independent application development framework
 
HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2
 
HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2HermesDDS reference manual for oem customers v.1.2
HermesDDS reference manual for oem customers v.1.2
 
Method and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network elementMethod and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network element
 
Extensible resource messaging between user applications and network elements ...
Extensible resource messaging between user applications and network elements ...Extensible resource messaging between user applications and network elements ...
Extensible resource messaging between user applications and network elements ...
 
Spirent's Study on Battery life Competition: Samsung S5 vs. S4
Spirent's Study on Battery life Competition: Samsung S5 vs. S4Spirent's Study on Battery life Competition: Samsung S5 vs. S4
Spirent's Study on Battery life Competition: Samsung S5 vs. S4
 
Internet of Things.pdf
Internet of Things.pdfInternet of Things.pdf
Internet of Things.pdf
 
Azure WP7 fire starter
Azure WP7 fire starterAzure WP7 fire starter
Azure WP7 fire starter
 
Methods and apparatus for automatic translation of a computer program languag...
Methods and apparatus for automatic translation of a computer program languag...Methods and apparatus for automatic translation of a computer program languag...
Methods and apparatus for automatic translation of a computer program languag...
 
Method and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switchMethod and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switch
 
Semantic open io t service platform technology
Semantic open io t service platform technologySemantic open io t service platform technology
Semantic open io t service platform technology
 
Attobahn_Presentation_redesigned_final
Attobahn_Presentation_redesigned_finalAttobahn_Presentation_redesigned_final
Attobahn_Presentation_redesigned_final
 
Method and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network elementMethod and apparatus for intelligent management of a network element
Method and apparatus for intelligent management of a network element
 
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
 
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
AN SDN APPROACH FOR AN ENERGY-EFFICIENT HETEROGENEOUS COMMUNICATION NETWORK I...
 

More from Tal Lavian Ph.D.

Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 
Photonic line sharing for high-speed routers
Photonic line sharing for high-speed routersPhotonic line sharing for high-speed routers
Photonic line sharing for high-speed routersTal Lavian Ph.D.
 
Systems and methods to support sharing and exchanging in a network
Systems and methods to support sharing and exchanging in a networkSystems and methods to support sharing and exchanging in a network
Systems and methods to support sharing and exchanging in a networkTal Lavian Ph.D.
 
Systems and methods for visual presentation and selection of IVR menu
Systems and methods for visual presentation and selection of IVR menuSystems and methods for visual presentation and selection of IVR menu
Systems and methods for visual presentation and selection of IVR menuTal Lavian Ph.D.
 
Grid proxy architecture for network resources
Grid proxy architecture for network resourcesGrid proxy architecture for network resources
Grid proxy architecture for network resourcesTal Lavian Ph.D.
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 
Systems and methods for electronic communications
Systems and methods for electronic communicationsSystems and methods for electronic communications
Systems and methods for electronic communicationsTal Lavian Ph.D.
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 
Radar target detection system for autonomous vehicles with ultra-low phase no...
Radar target detection system for autonomous vehicles with ultra-low phase no...Radar target detection system for autonomous vehicles with ultra-low phase no...
Radar target detection system for autonomous vehicles with ultra-low phase no...Tal Lavian Ph.D.
 
Grid proxy architecture for network resources
Grid proxy architecture for network resourcesGrid proxy architecture for network resources
Grid proxy architecture for network resourcesTal Lavian Ph.D.
 
Method and apparatus for scheduling resources on a switched underlay network
Method and apparatus for scheduling resources on a switched underlay networkMethod and apparatus for scheduling resources on a switched underlay network
Method and apparatus for scheduling resources on a switched underlay networkTal Lavian Ph.D.
 
Dynamic assignment of traffic classes to a priority queue in a packet forward...
Dynamic assignment of traffic classes to a priority queue in a packet forward...Dynamic assignment of traffic classes to a priority queue in a packet forward...
Dynamic assignment of traffic classes to a priority queue in a packet forward...Tal Lavian Ph.D.
 
Method and apparatus for using a command design pattern to access and configu...
Method and apparatus for using a command design pattern to access and configu...Method and apparatus for using a command design pattern to access and configu...
Method and apparatus for using a command design pattern to access and configu...Tal Lavian Ph.D.
 
Reliable rating system and method thereof
Reliable rating system and method thereofReliable rating system and method thereof
Reliable rating system and method thereofTal Lavian Ph.D.
 
Time variant rating system and method thereof
Time variant rating system and method thereofTime variant rating system and method thereof
Time variant rating system and method thereofTal Lavian Ph.D.
 
Systems and methods for visual presentation and selection of ivr menu
Systems and methods for visual presentation and selection of ivr menuSystems and methods for visual presentation and selection of ivr menu
Systems and methods for visual presentation and selection of ivr menuTal Lavian Ph.D.
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerTal Lavian Ph.D.
 

More from Tal Lavian Ph.D. (20)

Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 
Photonic line sharing for high-speed routers
Photonic line sharing for high-speed routersPhotonic line sharing for high-speed routers
Photonic line sharing for high-speed routers
 
Systems and methods to support sharing and exchanging in a network
Systems and methods to support sharing and exchanging in a networkSystems and methods to support sharing and exchanging in a network
Systems and methods to support sharing and exchanging in a network
 
Systems and methods for visual presentation and selection of IVR menu
Systems and methods for visual presentation and selection of IVR menuSystems and methods for visual presentation and selection of IVR menu
Systems and methods for visual presentation and selection of IVR menu
 
Grid proxy architecture for network resources
Grid proxy architecture for network resourcesGrid proxy architecture for network resources
Grid proxy architecture for network resources
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 
Systems and methods for electronic communications
Systems and methods for electronic communicationsSystems and methods for electronic communications
Systems and methods for electronic communications
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 
Radar target detection system for autonomous vehicles with ultra-low phase no...
Radar target detection system for autonomous vehicles with ultra-low phase no...Radar target detection system for autonomous vehicles with ultra-low phase no...
Radar target detection system for autonomous vehicles with ultra-low phase no...
 
Grid proxy architecture for network resources
Grid proxy architecture for network resourcesGrid proxy architecture for network resources
Grid proxy architecture for network resources
 
Method and apparatus for scheduling resources on a switched underlay network
Method and apparatus for scheduling resources on a switched underlay networkMethod and apparatus for scheduling resources on a switched underlay network
Method and apparatus for scheduling resources on a switched underlay network
 
Dynamic assignment of traffic classes to a priority queue in a packet forward...
Dynamic assignment of traffic classes to a priority queue in a packet forward...Dynamic assignment of traffic classes to a priority queue in a packet forward...
Dynamic assignment of traffic classes to a priority queue in a packet forward...
 
Method and apparatus for using a command design pattern to access and configu...
Method and apparatus for using a command design pattern to access and configu...Method and apparatus for using a command design pattern to access and configu...
Method and apparatus for using a command design pattern to access and configu...
 
Reliable rating system and method thereof
Reliable rating system and method thereofReliable rating system and method thereof
Reliable rating system and method thereof
 
Time variant rating system and method thereof
Time variant rating system and method thereofTime variant rating system and method thereof
Time variant rating system and method thereof
 
Systems and methods for visual presentation and selection of ivr menu
Systems and methods for visual presentation and selection of ivr menuSystems and methods for visual presentation and selection of ivr menu
Systems and methods for visual presentation and selection of ivr menu
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 
Ultra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizerUltra low phase noise frequency synthesizer
Ultra low phase noise frequency synthesizer
 

Recently uploaded

Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men 🔝Vijayawada🔝 E...
➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men  🔝Vijayawada🔝   E...➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men  🔝Vijayawada🔝   E...
➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men 🔝Vijayawada🔝 E...amitlee9823
 
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime GuwahatiGuwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahatimeghakumariji156
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一
在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一
在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一ougvy
 
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Bookingroncy bisnoi
 
➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men 🔝kakinada🔝 Escor...
➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men  🔝kakinada🔝   Escor...➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men  🔝kakinada🔝   Escor...
➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men 🔝kakinada🔝 Escor...amitlee9823
 
SM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdfSM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdfStefanoBiamonte1
 
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证tufbav
 
Point of Care Testing in clinical laboratory
Point of Care Testing in clinical laboratoryPoint of Care Testing in clinical laboratory
Point of Care Testing in clinical laboratoryoyebolasonuga14
 
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...amitlee9823
 
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...drmarathore
 
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...motiram463
 
➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men 🔝Deoghar🔝 Escorts...
➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men  🔝Deoghar🔝   Escorts...➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men  🔝Deoghar🔝   Escorts...
➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men 🔝Deoghar🔝 Escorts...amitlee9823
 
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证ehyxf
 
VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...
VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...
VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...SUHANI PANDEY
 
Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...
Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...
Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...amitlee9823
 

Recently uploaded (20)

Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
 
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
 
➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men 🔝Vijayawada🔝 E...
➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men  🔝Vijayawada🔝   E...➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men  🔝Vijayawada🔝   E...
➥🔝 7737669865 🔝▻ Vijayawada Call-girls in Women Seeking Men 🔝Vijayawada🔝 E...
 
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime GuwahatiGuwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
Guwahati Escorts Service Girl ^ 9332606886, WhatsApp Anytime Guwahati
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
 
CHEAP Call Girls in Vinay Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Vinay Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Vinay Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Vinay Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一
在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一
在线制作(ANU毕业证书)澳大利亚国立大学毕业证成绩单原版一比一
 
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
 
➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men 🔝kakinada🔝 Escor...
➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men  🔝kakinada🔝   Escor...➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men  🔝kakinada🔝   Escor...
➥🔝 7737669865 🔝▻ kakinada Call-girls in Women Seeking Men 🔝kakinada🔝 Escor...
 
SM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdfSM-N975F esquematico completo - reparación.pdf
SM-N975F esquematico completo - reparación.pdf
 
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
怎样办理维多利亚大学毕业证(UVic毕业证书)成绩单留信认证
 
Point of Care Testing in clinical laboratory
Point of Care Testing in clinical laboratoryPoint of Care Testing in clinical laboratory
Point of Care Testing in clinical laboratory
 
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
 
(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7
(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7
(INDIRA) Call Girl Napur Call Now 8617697112 Napur Escorts 24x7
 
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
 
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
 
➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men 🔝Deoghar🔝 Escorts...
➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men  🔝Deoghar🔝   Escorts...➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men  🔝Deoghar🔝   Escorts...
➥🔝 7737669865 🔝▻ Deoghar Call-girls in Women Seeking Men 🔝Deoghar🔝 Escorts...
 
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
 
VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...
VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...
VVIP Pune Call Girls Gahunje WhatSapp Number 8005736733 With Elite Staff And ...
 
Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...
Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...
Vip Mumbai Call Girls Andheri East Call On 9920725232 With Body to body massa...
 

Efficient communication in a network

  • 1. US 20100146111A1 (19) United States (12) Patent Application Publication (10) Pub. No.: US 2010/0146111 A1 Shacham et al. (43) Pub. Date: Jun. 10, 2010 (54) (75) (73) (21) (22) EFFICIENT COMMUNICATION IN A NETWORK Yotam Shacham, Palo Alto, CA (US); Guy Ben-Artzi, Palo Alto, CA (US); Alexei AleXevitch, HertZlia (IL); Amatzia Ben-Artzi, Palo Alto, CA (US); Tal Lavian, Sunnyvale, CA (US); Alexander Glyakov, Petach Tikva (IL); Russell W. McMahon, Woodside, CA (US); Yehuda Levi, Rishon LeZion (IL) Inventors: Correspondence Address: CONNOLLY BOVE LODGE & HUTZ LLP 1875 EYE STREET, N.W., SUITE 1100 WASHINGTON, DC 20006 (US) Related US. Application Data (60) Provisional application No. 61/200, 932, ?led on Dec. 4, 2008. Publication Classi?cation (51) Int. Cl. G06F 15/173 (2006.01) G06F 15/16 (2006.01) (52) Us. or. ....................................... .. 709/224; 709/247 (57) ABSTRACT A connection may be established between a ?rst device and a second device in a network. Thereafter, the ?rst device may be monitored for one or more performance parameters. Subse quently, full state information of an application may be pro cessed at the ?rst device based on the performance param eters, and the processed full state information may be transmitted by the ?rst device to the second device. Thereaf Assignee: Real Dice Inc., Carson City, NV ter, one or more state changes of the application may be (US) processed at the ?rst device based on the one or more perfor mance parameters While the connection is active. Subse Appl. No.: 12/630,186 quently, one or more processed state changes of the applica tion may be transmitted sequentially by the ?rst device to the Filed: Dec. 3, 2009 second device. 3111213 Wm” ,MHW “WW... Wwumumuww MMMMMMMMMM MR“ K‘ Connect l‘; i i Compressed Full information State , E " ' ' ' 1 l ‘ E Compressed State Change information i E Client , , , . E ; Lompressed btate Change Enfarmatton g ‘ Server 1 I I f Compressed State Change information E j g , i l i 1 Qompressed State Change informatéon E l ‘w. 1 Disconnect 2,’ ,/ ‘I’! j n. , . y m W M M w m W M w 1 02a ? w m w m w M m M W m w m w I m rum ,. e’ "1 {34
  • 2. Patent Application Publication Jun. 10, 2010 Sheet 1 0f 7 US 2010/0146111 A1 f192 a Cient mzn/
  • 3. Patent Application Publication Jun. 10, 2010 Sheet 2 0f 7 US 2010/0146111 Al c@ow5wm?3mcm2t, @NE @EEmE Maw.
  • 4. Patent Application Publication Jun. 10, 2010 Sheet 3 0f 7 US 2010/0146111 A1 @WaErm i i i i i i 5 § 5 i i i 2 i i l i l I s‘ “Afi“ 3QmEm3EmEmmQgE w éE2i65 2x% @EEg?gSsm?“ QmEQmM?EgEwmE,gW m wNum. cc au f fit;mwzilieieiai {mam
  • 5. Patent Application Publication Jun. 10, 2010 Sheet 4 0f 7 US 2010/0146111 A1 Eimm pammuummumwmmummmu~u~~~w~-h~_ “mmumg MUQCEDUNHMQ f Emma mwcw
  • 6. Patent Application Publication Jun. 10, 2010 Sheet 5 0f 7 US 2010/0146111 A1 tar? j “WWW__Mm‘m__“wx" 33*“ Eaiabiigii a connecticm between ciient ami sawer r‘ 4‘34 Mnnimr the ciient ‘50%’ (‘me a!’ more perfmmance parameiers am appiication infsrmatian l» 4% X Stare perimmance parameters and app?caiim informa?en Pmcess a mi: an'formataan staie of the appiacamn % ransmzt the pmcesse? mi; mi'nrmatmn state a? the; IHGX appiicatim by tr ha chq em to the server i i w vf-m N 412 ~~ @ i ‘ -_ 7 mm” x?w ~ ~~--._ ‘ a i‘ i f " - "My " Mfg/i’ Y’? Yea; ‘Him ‘ I V 7' V V " Munimr fur gm?mmance .paramsters and state change .r 415 _ . , g - process state {mange- of the appiacamn at we CHEM 44s V' 1‘ Transient sequemaaiiy me processeci state change 01: we appiiaatian fmm the ciient m the serve; W‘ / N Stag ) $13G.‘ 4
  • 7. Patent Application Publication Jun. 10, 2010 Sheet 6 0f 7 US 2010/0146111 A1 ffmm " Stan‘: ,? v 5m x R‘éB-CSWE‘ the W’QGGSESQG iuii mforma?on state 0? the _ appiéca?on at the sewer 594% ' F‘msess a pmcessed mi; informatisn siate a’? the agapiica?on at the sewer Recezva saquemia?y ‘the pruceassad staie shange a? the ‘- appiisatimn at ‘the serve? ‘m8 Promws the QS’GCG‘SS-Ed state change of ‘3m appiica?a? at We srewes" .--u__- ( Sing} j}
  • 8. Patent Application Publication Jun. 10, 2010 Sheet 7 0f 7 US 2010/0146111 A1 ( Start l, ‘MMM / I W 59;; Msnimr the pmcessor usage and bandwicith usagea Ex is ‘the prscesssr Yes {5 aunsda gbea;n dTwhicdptuh ff usage <Thbw‘? / f j// e’ yf/ 5G6 Qearease {he N0 "M compmssian V rati. o sc~s-_M,// // V ' f, is the pa'osessor " = @S i ,fi mega’: Tnspu and bandwidih /" usage >Thbw? jf/ ,/ increase the x ’/ mmmessisn f‘ 319 NO ‘raiis //>V ,. f.» n12 f/ ff’; §s ihe: presessor NQ < usage < Thaw am: bamdwidih Hf xxusage <Thbw ,// (if/j’ 554 XE; Yes / Leave the} ssmpressécm ram unchanged f’ W5 Stop jémwm- ------ - FEG. 6
  • 9. US 2010/0146111 A1 EFFICIENT COMMUNICATION IN A NETWORK CROSS-REFERENCE TO RELATED APPLICATION [0001] This application draws priority from Us. Provi sional Patent Application No. 61/200,932, ?led on Dec. 4, 2008, and hereby incorporated by reference herein in its entirety. FIELD OF THE INVENTION [0002] Various embodiments of the invention may relate to communication in a netWork and more speci?cally to improv ing the ef?ciency of communication in a netWork. BACKGROUND OF THE INVENTION [0003] Various users across the globe communicate or per form various activities on computer and device netWorks. Moreover, the users interact With each other through the net Works, such as the Internet. Typically, the users use devices like personal computers to interact over the Internet. The users can interact from various Internet Websites or social networking sites, for example, Facebook, Myspace, Hi5, and Orkut etc. Recently, the development in mobile devices such as cell phones, smartphones and PDAs, computers, laptops and the like has enabled them to be used for performing various activities on netWorks such as the Internet. Moreover, the mobile devices can be used for real-time interaction With other users on the netWork. The interaction or communication can be in the form of chatting, playing interactive online games, broWsing, shopping, music, video, banking, business and the like. [0004] The rapid pace of innovation in technology has gen erated various types of devices and platforms. Moreover, the number of devices is increasing rapidly. For example, there are various operating systems available for the devices such as WindoWs, Linux, Macintosh, and Symbian, etc. Moreover, a large number of J 2ME platforms are available for the mobile devices such as cell phones. Furthermore, the mobile devices have a Wide range of capabilities in terms of screen siZe, screen type, screen resolution, processor, and memory etc. The advancement in technology has enabled multi-user inter action on the netWork, for example multi-player games on mobile devices. Moreover, With rapid decline in prices of hardWare, advanced and inexpensive devices are readily available. Furthermore, advancements in softWare, operating systems, and input/ output interfaces have enabled the devel opment of high performance media capabilities on devices. Interactive applications such as media games are noW being developed Which alloW multi-user interactions on netWorks. As a result, the number of users and the requirement for the quality of service in the netWork is increasing rapidly. [0005] Typically, interactive applications require constant communication betWeen the users. Therefore, a large amount of bandWidth may be required to maintain the communica tion. The bandWidth available on a device depends on the type of netWork and the hardWare or softWare of a device. For example, mobile netWork infrastructures such as in rural areas or otherWise underdeveloped areas may have less band Width as compared to infrastructures in developed cities or areas. As a result, the user With sloW netWork connection may experience latency in communication. Moreover, the infor mation to be transmitted can be limited due to a loW band Jun. 10,2010 Width netWork. Therefore, in case of some applications, for example, competitive online games, this may result in fair ness issues. Interactive applications such as chatting or mobile games may require real time updating of information, Which induces latency in communication. Furthermore, the scalability of these multi-user applications may depend on the ef?ciency and quality of service of netWork communications. [0006] A mechanism may, therefore, desirable for ef?cient communication in the netWork. Moreover, it may be desirable for the mechanism to be scalable. SUMMARY [0007] Various embodiments of the invention may provide a method for ef?cient communication in a netWork. The method may comprise establishing a connection betWeen a ?rst device and a second device in the netWork; monitoring the ?rst device for one or more performance parameters; processing full state information of an application at the ?rst device, Wherein the full state information is processed based on the performance parameters; transmitting the processed full state information of the application by the ?rst device to the second device; processing one or more state changes of the application at the ?rst device, Wherein the state changes are processed based on the one or more performance param eters, and Wherein the state changes are processed While the connection is active; and transmitting sequentially one or more processed state changes of the application by the ?rst device to the second device. [0008] Embodiments of the invention may further provide an apparatus for ef?cient communication in a netWork. The apparatus may comprise a memory con?gured to store full state information of an application and one or more state changes of the application; a monitoring module con?gured to monitor one or more performance parameters; an analyzer module con?gured to process the full state information and the state changes of the application based on the one or more performance parameters, and Wherein the state changes are processed While a netWork connection is active; and a trans mission module con?gured to: establish the connection in the netWork; transmit the processed full state information; and transmit sequentially the processed state changes [0009] Embodiments of the invention may further provide a system for e?icient communication in a netWork. The system may comprise means for establishing a connection betWeen a ?rst device and a second device in the netWork; means for monitoring the ?rst device for one or more performance parameters; means for processing full state information of an application at the ?rst device, Wherein the full state informa tion is processed based on the performance parameters; means for transmitting the processed full state information of the application by the ?rst device to the second device; means for processing one or more state changes of the application at the ?rst device, Wherein the state changes are processed based on the one or more performance parameters, and Wherein the state changes are processed While the connection is active; and means for transmitting sequentially one or more pro cessed state changes of the application by the ?rst device to the second device. [0010] Embodiments of the invention may further provide a computer-readable medium containing instructions for per forming a method for ef?cient communication in a netWork. The methodmay comprise establishing a connectionbetWeen a ?rst device and a second device in the netWork; monitoring the ?rst device for one or more performance parameters;
  • 10. US 2010/0146111Al processing full state information of the application at the ?rst device, wherein the full state information is processed based on the performance parameters; transmitting the processed full state information of the application by the ?rst device to the second device; processing one or more state changes of the application at the ?rst device, wherein the state changes are processed based on the one or more performance param eters, and wherein the state changes are processed while the connection is active; and transmitting sequentially one or more processed state changes of the application by the ?rst device to the second device. BRIEF DESCRIPTION OF THE DRAWINGS [0011] Having thus described various embodiments of the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein: [0012] FIG. 1 is an environment where various embodi ments of the invention may function; [0013] FIG. 2 is a block diagram of an apparatus for e?i cient communication in a network, according to an embodi ment of the invention; [0014] FIG. 3A is a block diagram illustrating ef?cient communication between a client and a server in the network, in accordance with an embodiment of the invention; [0015] FIG. 3B is a block diagram illustrating ef?cient communication between a client and a server in a network, in accordance with another embodiment of the invention; [0016] FIG. 4 illustrates a ?owchart diagram for ef?cient communication in the network, in accordance with an embodiment of the invention; [0017] FIG. 5 illustrates a ?owchart diagram for ef?cient communication in the network, in accordance with an embodiment of the invention; and [0018] FIG. 6 illustrates a ?owchart diagram for deciding a compression ratio for information, in accordance with an embodiment of the invention. DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION [0019] Illustrative embodiments of the invention now will be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodi ments of the invention are shown. Indeed, the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout. [0020] FIG. 1 is an environment where various embodi ments of the invention may function. As shown, devices such as clients 102a-n may communicate to interact and share information in a network with devices such as a server 104. Clients 102a-n can be, but are not limited to a mobile phone, a laptop, a personal computer, a smartphone and the like. Similarly, various other devices can be connected in the net work through server 104. Clients 102a-n can have different hardware and software platforms. Examples of software plat forms include operating systems such as Windows, Linux, Macintosh, Symbian, and so forth. Moreover, clients 102a-n may have different hardware, such as the screen siZe, screen resolution, audio and video functionality, processors and so forth. Therefore, the applications executing on the clients Jun. 10,2010 102a-n and server 104 will generally be compatible with the operating systems and hardware platform of these devices. [0021] Clients 102a-n may interact with each other through server 104 in real-time for activities such as chatting, playing games, banking and so forth. Clients 102a-n may interact from different types of networks. For example, client 102a may communicate with server 104 through a mobile network with a maximum bandwidth of 14.4 kbps, and client 1021) may communicate through an Ethernet network with a maxi mum bandwidth of 2 Mbps. Moreover, clients 102a-n can have different hardware and software capabilities. For example, client 102a may be a device such as a mobile phone and client 1021) may be device such as a personal computer. Therefore, the communication between clients 102a-n may generally be based on various network and device perfor mance parameters. Examples of the performance parameters may include, but are not limited to, the bandwidth of the network, the type of network, communication protocols used, latency in communication, a user’s online time, processing power of clients 102, processor usage of clients 102, memory of clients 102, and other parameters such as electronics, bat teries, screen, radio, communications of clients 102 and so forth. [0022] Interactive applications may often require a large amount of real-time information transfer between clients 102 and server 104. In such cases, a lot of network bandwidth may be required to avoid latency in the network. For example, in case of interactive multi-player games, real-time information may be transferred regarding the status of the player, statistics of the game, state of the game, game data and so forth. Typically, in network communication, clients 102 connect to server 104, and thereafter the clients 102 and server 104 pass the data to one another, until the connection is closed. For example, in case of an online game, client 102 and server 104 can regularly exchange the complete information state of the game or the user. The network traf?c in this case can be de?ned as: N><STATE, where N is number of operations and STATE is information that is large enough to describe an information state of a user. The user information state can be for example, but not limited to, joined the game room, left the game room, changed a position in the game and many other states possible in case of a game. However, a lot of bandwidth may be required to transfer this information regularly, which may lead to ine?iciency of the network bandwidth. [0023] Therefore, mechanisms may be used to improve the e?iciency by providing more information on the same band width of the network. However, a large Central Processing Unit (CPU) or processor, memory and more complex logic may be required to enable ef?cient communication in the network. The processor usage of a device can be offset by the use of additional memory in case of real-time applications. For example, the information that is to be processed can be cached before being processed. As a result, more information can be processed; however, more processing usage may be required to process the cached data. Similarly, in case the processing usage of the device is high, then less data can be used for processing. Therefore, various performance param eters of clients 102 or server 104 may be analyZed and an optimum value selected to make e?icient use of the network bandwidth. [0024] FIG. 2 is a block diagram ofa system 200 for e?i cient communication in the network. System 200 may func tion to manage the bandwidth for communication in the net work. In an embodiment of the invention, system 200 can be
  • 11. US 2010/0146111Al implemented as hardware, software or ?rmware on devices such as clients 102a-n and server 104. In an embodiment of the invention, system 200 is an application executing on cli ents 102a-n and server 104. [0025] A real-time application can be executed on client 10211. For example, the real-time application can be an online computer game. In this case, client 102a may communicate regularly with server 104 for game information and other services. In an embodiment of the invention, server 104 is a game server. Client 102a can have other applications execut ing along with the online computer game. The execution of the application may require usage of network bandwidth for transmission of game information. Further, the application may require usage of a processor of client 10211 for processing the application information. Therefore, the performance of client 102a may need to be monitored to enable ef?cient communication on the network. The application executing on client 102a can include various information states. For example, in case of an online multi-user game or a chat application, full state information of the application may include, but is not limited to, the details regarding the Internet Protocol (IP) addresses of all the users connected, server address, Graphical User Interface (GUI) data of the applica tion, number of users connected, a stage of user, user mes sages, the state change of the user and so forth. The state change can be, for example, a move taken by the user in an online game, a new message sent by the user, a presence message change of the user, or any other change based on the type of application. For example, the state change in case of an online computer game canbe: a user joined the game room, left the game room, changed a position in the game and many other states possible in case of a game. The full state infor mation of the application can include a large amount of data and may require substantial network bandwidth. However, the state change information may require much lower net work bandwidth than the full state information. [0026] System 200 may include a memory 202 to store the performance parameters of a client 102a and application information. Examples of memory 202 include, but are not limited to, a Random Access Memory (RAM), a Read Only Memory (ROM) and so forth. System 200 may include a monitoring module 204 for monitoring the performance parameters of a client 102a and application information. Monitoring module 202 may monitor the network and client 10211 to gather data that may include, but which is not limited to, the type of network, amount of information to be trans mitted, type of information to be transmitted, total and avail able bandwidth of the network, network capacity ratio, capac ity of processor and/ or processor usage. The network capacity ratio can be de?ned as a ratio of siZe of the information to be transmitted to an available bandwidth of the network. Further, monitoring module 204 may monitor the application to gather the application information such as full state information and/ or state changes. Monitoring module 204 sends the moni tored information to memory 202 for storage. In an embodi ment of the invention, monitoring module 204 monitors client 102a regularly after a predetermined time period. In another embodiment of the invention, monitoring module 204 moni tors client 10211 in real-time. Monitoring module 204 can be implemented as a processor, software, ?rmware or a combi nation thereof. [0027] An analyZer module 206 may process the applica tion information stored in memory 202.AnalyZer module 206 may process the full information state and/or state changes of Jun. 10,2010 the application based on the performance parameters moni tored by monitoring module 204. In an embodiment of the invention, analyZer module 206 compresses the application information. In another embodiment of the invention, ana lyZer module 206 decompresses the application information. For example, analyZer module 206 may use compression algorithms such as ZIP to compress or decompress the infor mation. In an embodiment of the invention, analyZer module 206 processes the full information state once on establishing the connection, and thereafter only the state changes are processed. The state changes may be processed sequentially as they are monitored by monitoring module 204. AnalyZer module 206 may select the information to be transmitted by the client 102a based on the state of network connection and state of the application. For example, processed full state information of the application may be transmitted once after the connection between client 102a and server 104 is estab lished. Similarly, only the processed state changes may be transmitted after the transmission of the full state informa tion. Moreover, the analyZer module 206 may decide when to stop the transmission of the application information. Various embodiments of processes relating to transmitting the infor mation are explained in detail in conjunction with FIGS. 3A, 3B, 4 and 5. [0028] The application information processed by the ana lyZer module 206 may be forwarded to a transmission module 208 for transmitting to server 104. In an embodiment of the invention, analyZer module 206 may signal transmission module 208 to receive or transmit the information. Further, transmission module 208 may establish a connectionbetween client 102a and server 104. In an embodiment of the inven tion, transmission module 208 may use transmission proto cols such as HTTP, TCP, UDP, HTTPS, SIP, or other proto cols for transmitting the data. In an embodiment of the invention, transmission module 208 selects the protocol based on the type of network. In another embodiment of the invention, transmission module 208 selects the protocol based on the network parameters and device resources. For example, transmission module 208 may use tunneling to send data in case the network does not support a particular proto col. For example, HTTP, FTP, SSH protocols can be encap sulated with a protocol supported by mobile phone network such as TCP. [0029] FIG. 3A is a block diagram illustrating ef?cient communication between client 102a and server 104 in the network, in accordance with an embodiment of the invention. As discussed above, typically, in network communication, a client connects to a server and thereafter the client and the server pass the data to one another, until one of the two closes the connection or the application is closed. For example, in case of an online game, the client and the server may exchange the complete state of the game or the user to the server. Therefore, the network tra?ic in this case can be de?ned as: N><STATE, where N is number of operations and STATE is information that is large enough to describe the user state. [0030] In the embodiment shown in FIG. 3A, client 102a connects to server 104 and subsequently transfers the full state information of the application. Block 302A depicts the communication between client 102a and server 104, in an embodiment of the invention. Thereafter, client 102a and server 104 communicate sequentially only the changes or differences in the states, and not the full state information of the application. For example, in case of an online game, client
  • 12. US 2010/0146111 A1 102a may transmit only the change in the user position, and not the complete game state, to server 104. In this case, the netWork tra?ic can be de?ned as: STATE+(N— l)><DIFFERENCE Where N is number of operations, STATE is information that is large enough to describe the application state, and DIF FERENCE is information that is large enough to describe a change in application state. In an embodiment of the inven tion, the siZe of DIFFERENCE is less than the siZe of STATE. As a result, much less information may need to be transmitted on the netWork as compared to the typical netWork commu nication. [0031] FIG. 3B is a block diagram illustrating communica tion betWeen client 102a and server 104 in the netWork, in accordance With another embodiment of the invention. As shoWn in FIG. 3B, the information to be transmitted in the netWork is processed. Block 302B depicts the communica tion betWeen client 102a and server 104, in an embodiment of the invention. Client 102a connects to server 104 and trans mits the processed full state of the application in a com pressed format. Thereafter, the processed changes or differ ences in the states are shoWn being passed sequentially in a compressed format. In this case, the total netWork tra?ic can be de?ned as: K><(STATE+(N—1)xDIFFERENCE) Where N is number of operations, STATE is information that is large enough to describe the application state, and DIF FERENCE is information that is large enough to describe a change in application state, and K is a compression ratio, Where K is a real number less than 1. The compression ratio can be de?ned as the ratio of the siZe of compressed informa tion to the siZe of uncompressed information. As a result, further reduction in netWork tra?ic may be achieved, as com pared to the netWork communication discussed in conjunc tion With FIG. 3A. [0032] Various algorithms and available compression stan dards can be used to compress and transmit the information. In an embodiment of the invention, client 102a and server 104 can agree to use meta protocols to optimiZe the siZe of trans ferred information. Therefore, ef?ciency of the existing band Width availability can be increased. In another embodiment of the invention, a compression protocol such as ZIP is used to compress the data. The amount of compression of the data can be decided based on various parameters such as processor usage, latency, total netWork bandWidth, total used band Width, user statistics such as time spent online, use of com munication functionalities, etc. In an embodiment of the invention, a threshold value may be decided for each of the maximum processor usage and maximum alloWed bandWidth usage. The threshold values are generally less than 100% for processor usage and bandWidth usage, in an embodiment of the invention. The algorithm that may be used by analyZer module 206 for deciding compression ratio is explained in detail in conjunction With FIG. 6. [0033] In an embodiment of the invention, clients 102a-n interact through server 104, therefore, the application state is transmitted only once to server 104 and subsequently trans ferred to each of clients 102a-n. As a result, client 102a transmitting the update is not required to transmit the infor mation to all the other clients in the netWork, and bandWidth can be saved. For example, in case of an online card game, When a user on client 102a changes the position of his card, the information is transmitted to server 104. Subsequently, Jun. 10,2010 server 104 transmits the position to other clients 102b-n on the netWork. Therefore, client 10211 is not required to connect to each of the other clients 102b-n directly to transmit the information. As a result, the netWork bandWidth may be con served. [0034] FIG. 4 illustrates a ?owchart diagram for ef?cient communication in the netWork, in accordance With an embodiment of the invention. A connection is established 402 betWeen client 102a server 104 for communication over the netWork. In an embodiment of the invention, client 102a communicates With server 1 04 to transfer information regard ing the application. At 404, client 102a and/or the netWork may be monitored to gather information related to perfor mance parameters, and the application information may be obtained by monitoring module 204. Thereafter, the perfor mance parameters and the application information may be stored 406, e.g., in memory 202. In an embodiment of the invention, the application information can be full state infor mation or information regarding the state changes. [0035] At 408, the full state information may be processed based on the parameters by processor 206. AnalyZer module 206 may compress the information. The compression ratio of the information may be based on parameters such as proces sor usage and/or bandWidth available on the netWork. An exemplary process of deciding the compression ratio is explained in detail in conjunction With FIG. 6. In an embodi ment of the invention, the compression ratio of the informa tion can be updated in real-time based on information gath ered by monitoring module 204. [003 6] In an embodiment of the invention, analyZer module 206 may also be used to decompress information (e.g., infor mation received in compressed form). For example, the infor mation received from server 104 at client 102a may be decompressed. [0037] Returning to FIG. 4, subsequent to 408, the pro cessed information may be transmitted by transmission mod ule 208, at 410. In an embodiment of the invention, the pro cessed full state information may be transmitted based on the type of the netWork and the protocols supported by the net Work. [0038] At 412, it is determined Whether the connection betWeen client 102a and server 104 is active. In case the connection is active, then the state change of the application is monitored 414. In an embodiment of the invention, the state change may be stored in memory 202. Subsequently, at 416, the state change may be processed by analyZer module 206. The state change may be compressed by analyZer module 206 based on the performance parameters. Thereafter, the pro cessed state change information may be transmitted 418, e. g., by transmission module 208 to server 104. The state changes may be monitored, processed and transmitted until the con nection is closed. [0039] FIG. 5 illustrates a ?owchart diagram for ef?cient communication in the netWork, in accordance With another embodiment of the invention. At 502, processed full informa tion state of the application may be received at server 104 from client 10211. The processed full information state may be received by a transmission module 208. In an embodiment of the invention, processed full state information may be received at client 10211 from server 104. Thereafter, at 504 the processed full information state of the application may be processed at server 104. In an embodiment of the invention, the processed full information state is decompressed at server 104. The processed full information state may be, processed
  • 13. US 2010/0146111A1 by analyzer module 206. In an embodiment of the invention, the processed full state information may be processed at client 102a. At 506, processed state changes may be received sequentially at server 104. The processed state changes may be received by transmission module 208. Subsequently, the processed state changes may be processed at server 104, e. g., by analyZer module 206. In an embodiment of the invention, the processed state changes are decompressed at server 104. In an embodiment of the invention, the processed state changes are processed at client 102a. [0040] The process is explained above to be executing at server 104 for the purpose of clarity, and it should be apparent to a person skilled in the art that the processes can be per formed at client 102a-n and are not limited to server 104. That is, processes similar to those shoWn in and described With respect to FIGS. 4 and 5 may be used for communications in either or both directions betWeen clients 102a-n and server 104. [0041] FIG. 6 illustrates a ?owchart diagram for deciding the compression ratio for information, in accordance With an embodiment of the invention. The communication in the net Work can be made ef?cient by managing the bandWidth and processor usage. Analyzer module 206 may compress infor mation to be transmitted on the netWork to improve the e?i ciency of communication. The compression ratio of the infor mation may be decided based on the parameters such as processor usage and/ or bandWidth usage. [0042] In an embodiment of the invention, a prede?ned processor usage ‘Thcpu’ is de?ned for the maximum alloWed processor usage. Similarly, a prede?ned netWork capacity ratio ‘Thbw’ is decided for the maximum alloWed bandWidth usage. The netWork capacity ratio is de?ned as the ratio of information siZe to an available bandWidth of the netWork. The values of Thcpu and Th17W may be expressed as real num bers less than 1, in an embodiment of the invention. These may correspond to percentages of total processor availability and total available bandWidth, respectively. [0043] At 602, the processor usage and the bandWidth usage may be monitored by monitoring module 204. There after, at 604, if the current processor usage is higher than Thcpu and current bandWidth usage is less than Thbw, then at 606, the compression ratio may be decreased. In case the conditions at 604 are not met, the process proceeds to 608. At 608, if the actual bandWidth is higher than Th17W and the actual processor usage is loWer than Thcpu, then at 610 the compres sion ratio may be decreased. Therefore, a tradeoff is done betWeen the processor usage and available bandWidth to adjust compression of the information. [0044] In case the conditions at 608 are not met, the process proceeds to 612. At 612, ifthe actual bandWidth usage is less than Th17W and actual processor usage is loWer than Thcpu, then at 614, the compression ratio may be left unchanged. In an embodiment of the invention, a linear optimiZation algorithm may be used to optimiZe both processor usage and bandWidth usage. As a result, ef?ciency of communication in the net Work may be improved. [0045] Embodiments of the invention are described above With reference to block diagrams and schematic illustrations of methods and systems according to embodiments of the invention. It Will be understood that each block of the dia grams and combinations of blocks in the diagrams can be implemented by computer program instructions. These com puter program instructions may be loaded onto one or more general purpose computers, special purpose computers, or Jun. 10,2010 other programmable data processing apparatus or computing devices to produce machines, such that the instructions Which execute on the computers or other programmable data pro cessing apparatus create means for implementing the func tions speci?ed in the block or blocks. Such computer program instructions may also be stored in a computer-readable medium, such as a memory, that can direct a computing device or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means that implement the function speci?ed in the block or blocks. Furthermore, such computer program instructions may be provided for doWn load via a netWork and/ or may be doWnloaded via a netWork. [0046] While the invention has been described in connec tion With What is presently considered to be the most practical and various embodiments, it is to be understood that the invention is not to be limited to the disclosed embodiments, but on the contrary, is intended to cover various modi?cations and equivalent arrangements included Within the spirit and scope of the appended claims. [0047] This Written description uses examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope the invention is de?ned in the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be Within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements With insubstantial differences from the literal languages of the claims. We claim: 1. A communication method comprising: establishing a connection betWeen the ?rst device and a second device of the netWork; monitoring the ?rst device for one or more performance parameters; processing full state information of an application at the ?rst device, Wherein the full state information is pro cessed based on the performance parameters; transmitting the processed full state information of the application by the ?rst device to the second device; processing one or more state changes of the application at the ?rst device, Wherein the state changes are processed based on the one or more performance parameters, and Wherein the state changes are processed While the con nection is active; and transmitting sequentially one or more processed state changes of the application by the ?rst device to the second device. 2. The method of claim 1, Wherein the performance param eters comprise processor usage of the ?rst device. 3. The method of claim 1, Wherein the performance param eters comprise available bandWidth of the netWork at the ?rst device. 4. The method of claim 1, Wherein the performance param eters comprise bandWidth usage of the netWork at the ?rst device. 5. The method of claim 1, Wherein the performance param eters comprise latency in communication betWeen the ?rst device and the second device.
  • 14. US 2010/0146111141 6. The method of claim 1, wherein the performance param eters comprise usage statistics of a user at the ?rst device. 7. The method of claim 1, Wherein the performance param eters comprise a netWork capacity ratio. 8. The method of claim 7, Wherein the netWork capacity ratio comprises a ratio of information siZe to an available bandWidth of the netWork. 9. The method of claim 1, Wherein the application com prises an online game. 10. The method of claim 1, Wherein the application com prises an online chat application. 11. The method of claim 1, Wherein the processing the full state information of the application comprises compressing the full state information. 12. The method of claim 11, Wherein the processing the full state information of the application further comprises: increasing a compression ratio When a processor usage is loWer than a prede?ned processor usage and a netWork capacity is greater than a prede?ned netWork capacity ratio; and decreasing the compression ratio When the processor usage is greater than the prede?ned processor usage and the netWork capacity is loWer than the prede?ned netWork capacity ratio. 13. The method of claim 1, Wherein the processing the state changes of the application comprises compressing the state changes. 14. The method of claim 13, Wherein the processing the state changes of the application comprises: increasing a compression ratio When a processor usage is loWer than a prede?ned processor usage and a netWork capacity is greater than a prede?ned netWork capacity ratio; and decreasing the compression ratio When the processor usage is greater than the prede?ned processor usage and the netWork capacity is loWer than the prede?ned netWork capacity ratio. 15. The method of claim 1 further comprising: receiving the processed full state information of the appli cation at the second device from the ?rst device; processing the processed full state information of the appli cation at the second device. receiving sequentially the one or more processed state changes of the application at the second device from the ?rst device; and processing the processed one or more state changes of the application at the second device, Wherein the processed state changes are processed While the connection is active. 16. The method of claim 15, Wherein the processing the processed full state information of the application comprises decompressing the processed full state information. 17. The method of claim 15, Wherein the processing the processed state changes of the application comprises decom pressing the processed state changes. 18. The method of claim 1 further comprising storing the full state information of the application, the state changes of the application and the performance parameters. 19. The method of claim 1, further comprising doWnload ing instructions that, if executed by a computing device, cause the computing device to implement at least the monitoring, processing full state information, and processing one or more state changes. Jun. 10,2010 20. The method of claim 1, further comprising providing for doWnload instructions that, if executed by a computing device, cause the computing device to implement at least the monitoring, processing full state information, and processing one or more state changes. 21. An apparatus for communication in a netWork, the apparatus comprising: memory con?gured to store full state information of an application and one or more state changes of the appli cation; a monitoring module con?gured to monitor one or more performance parameters; an analyZer module con?gured to process the full state information and the state changes of the application based on the one or more performance parameters, and Wherein the state changes are processed While a netWork connection is active; and a transmission module con?gured to: establish the connection in the netWork; transmit the processed full state information; and transmit sequentially the processed state changes. 22. The apparatus of claim 21, Wherein the performance parameters comprise a processor usage. 23. The apparatus of claim 21, Wherein the performance parameters comprise an available bandWidth of the netWork. 24. The apparatus of claim 21, Wherein the performance parameters comprise a bandWidth usage of the netWork. 25. The apparatus of claim 21, Wherein the performance parameters comprise a usage statistics of a user. 26. The apparatus of claim 21, Wherein the performance parameters comprise a netWork capacity ratio. 27. The system of claim 21, Wherein the netWork capacity ratio comprises a ratio of information siZe to an available bandWidth of the netWork. 28. The apparatus of claim 21, Wherein the application comprises an online game. 29. The apparatus of claim 21, Wherein the application comprises an online chat application. 30. The apparatus of claim 21, Wherein the analyZer mod ule is con?gured to compress the full state information and the one or more state changes of the application. 31. The apparatus of claim 21, Wherein the analyZer mod ule is con?gured to decompress the full state information and the one or more state changes of the application. 32. The apparatus of claim 21, Wherein the analyZer mod ule is further con?gured to: increase a compression ratio When a processor usage is loWer than a prede?ned processor usage and a netWork capacity is greater than a prede?ned netWork capacity ratio; and decrease the compression ratio When the processor usage is greater than the prede?ned processor usage and the net Work capacity is loWer than the prede?ned netWork capacity ratio. 33. The apparatus of claim 21, Wherein the transmission module is further con?gured to receive processed full state information of the application and processed state changes of the application. 34. The apparatus of claim 21, Wherein the analyZer mod ule is further con?gured to decompress compressed informa tion received by the apparatus. 35. A system for e?icient communication in a netWork, the system comprising:
  • 15. US 2010/0146111141 means for establishing a connection between a ?rst device and a second device in the network; means for monitoring the ?rst device for one or more performance parameters; means for processing a full state information of the appli cation at the ?rst device, Wherein the full state informa tion is processed based on the performance parameters; means for transmitting the processed full state information of the application by the ?rst device to the second device; means for processing one or more state changes of the application at the ?rst device, Wherein the state changes are processed based on the one or more performance parameters, and Wherein the state changes are processed While the connection is active; and means for transmitting sequentially one or more processed state changes of the application by the ?rst device to the second device. 36. The system of claim 35, Wherein the means for pro cessing comprises means for compressing the full state infor mation and the state changes of the application. 37. The system of claim 35, Wherein the means for pro cessing comprises means for decompressing the full state information and the state changes of the application. 38. The system of claim 35, Wherein the means for pro cessing further comprises: means for increasing a compression ratio When a processor usage is loWer than a prede?ned processor usage and a netWork capacity is greater than a prede?ned netWork capacity ratio; and means for decreasing the compression ratio When the pro cessor usage is greater than the prede?ned processor usage and the netWork capacity is loWer than the pre de?ned netWork capacity ratio. 39. The system of claim 35, Wherein the means for trans mitting further comprising means for receiving the processed full state information of the application and the processed state changes of the application. 40. A computer-readable medium containing instructions that, if executed by a computing device, cause the computing device to implement a method comprising: establishing a connection betWeen a ?rst device, including the computing device, and a second device in the net Work; monitoring the ?rst device for one or more performance parameters; processing full state information of an application at the ?rst device, Wherein the full state information is pro cessed based on the performance parameters; transmitting the processed full state information of the application by the ?rst device to the second device; Jun. 10,2010 processing one or more state changes of the application at the ?rst device, Wherein the state changes are processed based on the one or more performance parameters, and Wherein the state changes are processed While the con nection is active; and transmitting sequentially one or more processed state changes of the application by the ?rst device to the second device. 41. The computer-readable medium of claim 40, Wherein the processing comprises compressing the full state informa tion and the state changes of the application. 42. The computer-readable medium of claim 40, Wherein the processing comprises decompressing the processed full state information and the processed state changes of the appli cation. 43. The computer-readable medium of claim 40, Wherein the processing further comprises: increasing a compression ratio When a processor usage is loWer than a prede?ned processor usage and a netWork capacity is greater than a prede?ned netWork capacity ratio; and decreasing the compression ratio When the processor usage is greater than the prede?ned processor usage and the netWork capacity is loWer than the prede?ned netWork capacity ratio. 44. The computer-readable medium of claim 40, Wherein the application comprises an online game. 45. The computer-readable medium of claim 40, Wherein the application comprises an online chat application. 46. A communication method comprising: receiving, by a ?rst device of a netWork, information from a second device of the netWork; processing the information to obtain full state information corresponding to an application; receiving, by the ?rst device, at least one subsequent infor mation transmission from the second device; and processing the at least one subsequent information trans mission to obtain state change information relating to the application. 47. The method of claim 46, Wherein each of processing the information and processing the at least one subsequent infor mation transmission comprises performing data decompres sion, Wherein the information and the at least one sub sequent information transmission Were compressed prior to transmis sion using compression based on one or more performance parameters determined for the second device. 48. The method of claim 47, Wherein a compression ratio of the compression is adaptive based on the one or more perfor mance parameters.