Abstract: Systems and methods for facilitate secure communication of DRIS utilized to generate the set of DRIPs are described herein. According to the present subject matter, a Dynamic Random Interleaving Settings (DRIS) packet corresponding to a set of Dynamic Random Interleaving Packets (DRIPs) are identified. The set of DRIPs include a plurality of data packets packed based on a configuration of data packing. The DRIS packet defines the configuration of data packing dynamically and randomly. Further, a communication channel and a communication mode for transmission of the DRIS packet is determined and corresponding to the communication mode, a manner of transmission of the DRIS packet is selected. Moreover, the transmission of the DRIS packet is also scheduled through the determined communication channel based on the scheduling method.
TECHNICAL FIELD
[0001] The present subject matter relates to digital communication
techniques and, particularly, but not exclusively, to techniques of secure data
communication.
BACKGROUND
[0002] Communication devices, such as laptops, computers, tablets,
and mobile phones, are being utilized extensively by individuals in their daily
life. These devices communicate with multiple other communication devices
and are configured to exchange data between multiple communicating
entities. Typically, data communication requires a communication network to
exchange data from one point to another. The communication network acts
as a link between the communication devices connected to such a network.
[0003] Nowadays, the communication devices, while communicating
through the communication network, prefer utilizing digital communication
techniques over analog communication techniques due to various
considerations, such as reliability, security, and performance. To facilitate
effective, reliable, and secure digital communication between the
communication devices, multiple communication protocols have been
developed and are implemented in the communication network which have
evolved over time based on requirements and development of technology.
BRIEF DESCRIPTION OF THE FIGURES
[0004] The detailed description is described with reference to the
accompanying figures. In the figures, the left-most digit(s) of a reference
number identifies the figure in which the reference number first appears. The
same numbers are used throughout the figures to reference like features and
3
components. Some implementations of system and/or methods in accordance
with implementations of the present subject matter are now described, by way
of example only, and with reference to the accompanying figures, in which:
[0005] Fig. 1 illustrates a communication system for secure data
communication, in accordance with an implementation of the present subject
matter;
[0006] Fig. 2(a) depicts a manner in which DRIS packets are
transmitted and received through a communication channel based on the
random time slot mode, in accordance with an implementation of the present
subject matter;
[0007] Fig. 2(b) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
random time slot mode in accordance with an implementation of the present
subject matter;
[0008] Fig. 2(c) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
random time slot mode in accordance with an implementation of the present
subject matter;
[0009] Fig 3(a) depicts a manner in which DRIS packets are
transmitted and received through a communication channel based on random
piggy tailing communication mode, in accordance with an implementation of
the present subject matter;
[0010] Fig 3(b) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing communication mode, in accordance with an
implementation of the present subject matter;
4
[0011] Fig 3(c) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing communication mode, in accordance with an
implementation of the present subject matter;
[0012] Fig 3(d) depicts yet another manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing communication mode, in accordance with an
implementation of the present subject matter;
[0013] Fig 3(e) depicts yet another manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing communication mode, in accordance with an
implementation of the present subject matter;
[0014] Fig 4(a) depicts a manner in which DRIS packets are
transmitted and received through a communication channel based on a linear
time communication mode, in accordance with an implementation of the
present subject matter;
[0015] Fig 4(b) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
linear time communication mode, in accordance with an implementation of the
present subject matter;
[0016] Fig 4(c) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
linear time communication mode, in accordance with an implementation of the
present subject matter;
[0017] Fig 4(d) depicts another manner in which DRIS packets are
transmitted and received through a communication channel based on the
5
linear time communication mode, in accordance with an implementation of the
present subject matter;
[0018] Fig. 5 depicts a manner in which DRIS packets and DRIPs are
transmitted and received through different channels based on a random time
slot communication mode, in accordance with an implementation of the
present subject matter;
[0019] Fig 6 depicts a manner in which DRIS packets and DRIPs are
transmitted and received through different channels based on a random piggy
tailing communication mode, in accordance with an implementation of the
present subject matter;
[0020] Fig. 7 depicts a manner in which DRIS packets and DRIPs are
transmitted and received through different channels based on a linear time
communication mode, in accordance with an implementation of the present
subject matter;
[0021] Fig. 8 illustrates a method for transmission of DRIS packets, in
accordance with an implementation of the present subject matter; and
[0022] Fig. 9 illustrates a method receiving DRIS packets, in
accordance with an implementation of the present subject matter.
[0023] It should be appreciated by those skilled in the art that any block
diagrams herein represent conceptual views of illustrative systems
embodying the principles of the present subject matter. Similarly, it will be
appreciated that any flow charts, flow diagrams, state transition diagrams,
pseudo code, and the like represent various processes which may be
substantially represented in computer readable medium and so executed by a
computer or processor, whether or not such computer or processor is
explicitly shown.
6
DESCRIPTION OF EMBODIMENTS
[0024] Systems and methods to facilitate secure data communication
over a communication network are described herein. The methods can be
implemented in various computing devices communicating through different
communication networks and with different communication protocols.
Although the description herein is with reference to computing devices
utilizing Near Field Communication (NFC) protocol, the methods and systems
may be implemented in other communication protocols, albeit with a few
variations, as will be understood by a person skilled in the art.
[0025] In digital communication, ensuring reliability of data and security
of the data communicated over the communication network is a challenge.
Maintaining reliability and security of the data in some communication
networks, such as point-to-point links in the communication networks, optical
fiber networks, and other wired connections is relatively easier as compared
to wireless communication networks. Especially in wireless communication
networks, due to numerous factors including limited channel bandwidth,
channel noise, jitter, attenuation, and interference, data communicated gets
corrupted and error(s) are invariably introduced into the communicated data.
[0026] It is known that to overcome issues of error in data
communication, error correction methods, such as use of Error Correction
Codes (ECCs) are employed to reduce error in data communications. Further,
the communication protocols also utilize different modulation methods, such
as, Phase-Shift Keying (PSK), Amplitude-Shift Keying (ASK), Quadrature
Amplitude Modulation (QAM), and Frequency-Shift Keying (FSK) which allow
efficient and non-erroneous data communication.
[0027] It is also known that to secure the data communication over the
communication networks, mere usage of error correction methods and
modulation techniques is not sufficient. Indeed, it is relatively easy to
7
eavesdrop on video/audio conversations, or intercept and modify data
packets communicated over communication networks if the data packets are
not securely communicated. Unsecure data communication through the
communication networks allows interception of data and, potentially
compromises privacy and reliability of the data communicated. Hence, to
secure the data communicated over communication networks, various data
security techniques, such as encryption are used.
[0028] Although, the use of error correction methods and data security
techniques allow for efficient and reliable data communication, the use of
such methods and techniques utilize a significant amount of processing
capabilities of communicating communication devices. In portable
communication devices, such as smartphones, laptops and tablets where
consumption of power is a concern, communication techniques tend to aim at
minimization of the utilization of resources. However, providing
communication techniques which allow secure data communication and are
also implementable on portable communication devices, and also cater to the
power consumption issues is a challenge.
[0029] According to an implementation of the present subject matter,
systems and methods to facilitate communication techniques which allow
secure data communication in a power efficient manner are described herein.
The described methods, on one hand, enable secure data communication
based on interleaving error correction method; on the other hand, provide
methods of securely interpreting the data. Further, the usage of interleaving
error correction method on portable communication devices does not utilize
any excessive resource and provide power efficient method of
communication.
[0030] Interleaving is one of the error correction methods which is
widely used for the purpose of data communication to overcome issue of
8
burst transmission errors. Burst transmission errors may be introduced onto
data communicated over the communication network due to various reasons
including limited channel bandwidth, channel noise, jitter, attenuation, and
interference. Due to such reasons, a sequence of bits may change their
values and introduce burst error. Typically, since error occur in bursts rather
than occurring independently, it is difficult to recover original data, merely
based on received data.
[0031] For example, if data transmitted between two communication
devices is a string of letters: “ItisasunnymorninginLondon” and, the
transmitted data undergoes burst error such that the received string of letter
becomes “It*****nymorninginLondon”, it is difficult to reconstruct the originally
transmitted data based on the received string of letters as some words have
been entirely lost due to the occurrence of burst error.
[0032] In such situations, interleaving the data allows to overcome
burst error and determine the originally transmitted data. For instance, in the
above stated example, if the data is interleaved by selecting every fourth
letter of the string of letters to generate interleaved data representing a string
of letters “IanrgontsyniniumindsnonLo” and transmitted, and a similar burst
error occurs, the received string of letters would become:
“Ia*****tsyniniumindsnonLo”. The received string of letters, when deinterleaved,
would provide a string of letters: “Itisasun*ymo*nin*inL*ndo*”. In
such a scenario, it is possible for the receiving device to determine and
reconstruct the string of letters “ItisasunnymorninginLondon”, based on
“Itisasun*ymo*nin*inL*ndo*”, since no word is completely lost during the burst
error.
[0033] It would be appreciated that interleaving methods generally
utilize a matrix configuration to interleave the data to be communicated. For
the purpose of interleaving, data is generally filled into the matrix either row
9
wise or column wise, and then is released column wise or row wise,
respectively. The complimentary filling and releasing format generates the
interleaved data to be communicated. Although, the use of interleaving
technique may provide resistance to the data being communicated, against
burst errors, the known use of interleaving technique does not provide
security to the data being communicated. This is generally due to the fact that
the matrix pattern used for the purpose of creation of interleaved data is either
well known or easily detectable based on few random trials.
[0034] Interleaving, when utilized in a dynamic and random manner
based on a specific configuration of data packing, can also provide data
security to the data communication. Further, since interleaving does not entail
much of complex computations, the methods can be utilized by portable
communication devices, especially for the purpose of near field
communications (NFC). Hence, dynamic and random interleaving can be
utilized for the purpose of generating interleaved packets that not only allow
effective burst error correction mechanism, but also provide security to the
data being communicated.
[0035] For utilizing interleaving error correction method to provide
security to data communication, a set of dynamic random interleaving packets
(DRIPs) may be generated based on dynamic random interleaving settings
(DRIS) that define configuration of dynamic and random data packing. Whilst
generation of the set of DRIPs based on DRIS may provide data security
along with reliable data communication between communicating devices, the
DRIS utilized to create the set of DRIPs, is also to be securely communicated
between data communicating devices for accurate and secure interpretation
of data by receiver devices. Hence, the foregoing explanation may describe
implementations of securely communicating the DRIS between the data
communicating devices.
10
[0036] In operation, the set of DRIPs may be generated based on
DRIS that define configuration of dynamic and random data packing. The
DRIS may include a set of randomizers which define matrix pattern of
interleaving, adapted for the data to be communicated. Since the pattern of
interleaving based on the randomizers is dynamic and random in nature, it
provides security to the data to be communicated.
[0037] In said method of dynamic and random data packing, either a
two dimensional (2-D) matrix, or, a three dimensional (3-D) matrix may be
utilized for the purpose of interleaving, where the filling and releasing of data
into the matrix is based on the set of randomizers defined by the DRIS. The
set of randomizers defined based on DRIS may govern one or more
configuration of data packing including: selection of either a 2-D or a 3-D
matrix to be utilized for interleaving, determination of number of columns for
the matrix to be utilized, determination of number of rows for the matrix to be
utilized, determination of number of layers for the matrix to be utilized in case
of a 3-D matrix selection, determination of data filling format to be adapted for
the purpose of data packing for the selected matrix, determination of data
releasing format to be adapted for the purpose of data packing for the
selected matrix, determination of data filling order into the selected matrix,
and determination of data releasing order from the selected matrix.
[0038] Upon determination of the above mentioned configuration of
data packing based on the set of randomizers, the data to be communicated
to communication devices may be interleaved. The interleaving may be done
by filling the data into the selected matrix and releasing the data from the
matrix based on the determined configuration, thereby generating the
interleaved data.
[0039] For example, in one situation, based on the set of randomizers
defined by the DRIS, the determined configuration of data packing may be
11
identified to be: 2-D matrix, 3 rows, 7 columns, 0 layers (since selected matrix
is 2-D), data filling format of ‘row wise’, data releasing format of ‘column wise’,
data filling order of ‘from 2nd row’, and data releasing order of ‘from 5th
column’. In the above situation, the data to be interleaved may be filled into a
2-D matrix of dimension where, the first bit of data sequence is filled into
the 2-D matrix from the 2nd row. It would be understood that in digital
communication, every data is a mere sequence of bits representing either ‘0’
or ‘1’. Hence, in the above described situation, the first bit of data to be
interleaved is filled from the 2nd row of the 2-D matrix. The filling of bits of data
may occur such that consecutive bits of the data may be filled in all 7 columns
of the 2nd row and then the filling of the 3rd row may be completed by next
consecutive set of 7 bits. Once the filling of the 3rd row is complete, finally the
1st row of the matrix may be filled with bits of the data. In such a manner, the
2-D matrix may be filled with 21 bits of data. Further, once the bits of data are
filled into the 2-D matrix, the bits of data may now be released to generate the
interleaved data. To this end, the bits of data may be released in a column
wise fashion starting from the 5th column since the data releasing order
determined based on the randomizers is ‘from 5th column’. All three bit entries
corresponding to row 1, row 2 and row 3 of column 5 may be released
followed by the bits of column 6. In a similar manner, all bits of data filled in
column 7, column 1, column 2, column 3, and column 4 may be released. The
bit sequence thus generated is a dynamic randomly interleaved bit sequence.
The interleaved bit sequence thus generated, when communicated to other
communication devices in the form of data packet, may be referred to as
DRIP.
[0040] It would be appreciated that the filling of the matrix with bits and,
releasing of bits may also be done in a reverse or random manner, other than
a sequential linear manner. That is, while filling bits of data into the matrix
12
from the rows, although the filling may start from row 2, the next row filled
may be row 1 instead of row 3. Hence, a reverse format of filling the matrix
may be adopted. Similarly, for the purpose of releasing, the bits may be
released in a random manner. That is, the releasing of bits from the matrix
may start from column 5 and then, instead of either releasing the bits from
column 6 or column 4, the bits may be released from column 2. Hence,
following a random format of data releasing. Further, it would also be
appreciated that the order and format of filling and releasing bits may be pre
determined and may be utilized for reconstruction of data at a later stage.
[0041] Since the determined configuration of data packing is identified
based on randomizers, the configuration may vary and change for different
data sets based on random change in value of randomizers. Hence, a set of
DRIPs may be generated based on one configuration of data packing while
another set of DRIPs may be generated based on another configuration of
data packing. Further, the varying configuration of data packing of the DRIPs
may provide security to the data as the de-interleaving of entire data packets
may not be possible based on one configuration. Furthermore, since the
randomizers are based on DRIS, for any communication device to deinterleave
the set of DRIPs correctly, the communication device should either
be aware of the randomizers utilized by the interleaving communication
device or, should be aware of the configuration of interleaving utilized for
each set of DRIPs.
[0042] According to the implementation of the present subject matter,
systems and methods to facilitate secure communication of DRIS utilized to
generate a set of DRIPs are described herein. As described above, for any
communication device to de-interleave/decode the set of DRIPs generated
based on DRIS, it should either be aware of set of randomizers utilized for
generation of the set of DRIPs to determine the configuration of data packing
13
or, should be aware of configuration of data packing utilized. For the sake of
explanation, the DRIS information related to the randomizers utilized for the
purpose of set of DRIPs generation is referred to as DRIS system details
(DRIS_SD) hereinafter. Similarly, the configuration of data packing utilized for
the purpose of set of DRIPs generation is referred to as DRIS value settings
(DRIS_VS). Further for the sake of clarity, the DRIS_SD and DRIS_VS are
collectively and commonly referred to as DRIS hereinafter.
[0043] In one implementation, the DRIS to be communicated to other
communication devices is either through the same channel through which the
set of DRIPs are communicated or, is through another channel of
communication. The determination of channel may either be based on a
channel determination parameter or may be based on preferences of the
communication devices communicating data over the communication
network. It would be understood that communication network through which
the communication devices exchange data may allow communication over
multiple channels.
[0044] Based on the determination of the channel through which the
DRIS is to be communicated, various communication modes may be utilized
for transfer of DRIS. The communication mode may be indicative of a
scheduling method to be utilized for transmission of the DRIS along with the
set of DRIPs. In one implementation, the communication mode may include,
but not limited to, Random time slot mode, Random Piggy Tailing mode, and
Linear time mode. In situations when it is determined that the DRIS are to be
communicated through same channel, any one of the communication mode
may be utilized to transmit the DRIS packets in the same channel through
which the set of DRIPs are communicated, in a pre-defined manner.
[0045] Similarly, when it is determined that the DRIS are to be
communicated through another channel, any one of the communication mode
14
may be utilized to transmit the DRIS packets through a different channel other
than through which the set of DRIPs are communicated. In such situations the
communication modes utilized to transmit DRIS packets may include, but not
limited to, Random time slot mode, Random Piggy Tailing mode, and Linear
time mode. Further, upon determination of a communication mode, a manner
of transmission may be determined to define the scheduling method for the
DRIS packets.
[0046] The random time slot mode may allow transmission of DRIS
packets in a random time slot where the time slots are varied from time to
time. For example, if a set of DRIPs (DRIP1) are data packed based on a
configuration defined by DRIS1 and another set of DRIPs (DRIP2) are data
packet based on a configuration defined by DRIS2; according to the random
time slot mode, the transmission of DRIS1 and DRIS2 may occur in a random
manner. In said situation, DRIP1 may be transmitted first, followed by the
DRIP2. Thereafter, DRIS2 may be transmitted followed by DRIS1. Similarly, in
another implementation, DRIS2 may be transmitted first followed by DRIP1,
DRIS1 and DRIP2. In one implementation, manner of transmission for a DRIS
corresponding to the set of DRIPs may either be before the transmission of
the set of DRIPs, after the transmission of the set of DRIPs, or during the
transmission of the set of DRIPs, identified based on a random time slot
(RTS) parameter. Hence, in random time slot mode, the transmission of DRIS
packets utilized for the data packing of the set of DRIPs may be transmitted
randomly. The communication mode along with the manner of transmission
may define the scheduling method of the DRIS corresponding to the set of
DRIPs.
[0047] The Random Piggy Tailing mode may provide for transmission
of DRIS packets along with the set of DRIPs or other data packets as piggy
tails or add-ons. In other words, the DRIS packets may be associated with
15
other data packets, such as set of DRIPs to form a combined data packet and
disguise the presence of the DRIS packet as an individual data packet. In one
implementation, the random piggy tailing of the DRIS packets may be done
based on piggy tailing parameter to determine the piggy tailing position of the
DRIS packets.
[0048] For example, a set of DRIPs (DRIP1) may be data packed
based on a configuration defined by DRIS1, another set of DRIPs (DRIP2)
may be data packet based on a configuration defined by DRIS2, and yet
another set of DRIPs (DRIP3) may be data packed based on a configuration
defined by DRIS3. In such a situation, the DRIS1, DRIS2, and DRIS3 may be
attached with either of the set of DRIPs and transmitted. In one
implementation, based on the piggy tailing parameter, each DRIS
corresponding to its set of DRIPs may be transmitted either before
transmission of the set of DRIPs, after transmission of the set of DRIPs,
during transmission of the set of DRIPs, or in a fragmented manner.
[0049] In the above described situation, if the piggy tailing parameter
defines that the DRIS are to be transmitted after the transmission of the set of
DRIPs, the DRIP1 may be transmitted followed by the set of DRIP2. One of
data packet from amongst the set of DRIP2 may piggy tail the DRIS1 during
the transmission. Similarly, the DRIS2 corresponding to the DRIP2 may be
piggy tailed with DRIP3 where one of the data packet of DRIP3 may piggy tail
the DRIS2 during the transmission. It would be understood that during piggy
tailing, the DRIS packet may either be appended or prepernded to the data
packet belonging to the set of DRIPs for the purpose of transmission.
[0050] Further, while the linear time mode is implemented, the DRIS
packets corresponding to the set of DRIPs are transmitted at predefined time
slots. The time slots may be defined based on a linear time parameter. Based
on the linear time parameter, each DRIS corresponding to its set of DRIPs
16
may be transmitted either before transmission of the set of DRIPs, after
transmission of the set of DRIPs, adjacently before the transmission of the set
of DRIPs, or adjacently after the transmission of the set of DRIPs. The
manner in which the DRIS is transmitted based on linear time mode has been
described in detail with the help of figures and the explanation is here omitted
for the sake of brevity.
[0051] As described earlier, the DRIS packets may either be shared
through the same channel of communication through which the set of DRIPs
is transmitted or may utilize another channel of communication for the
purpose. Whilst utilizing any of the available channels for communication,
either same or different, the communication devices may utilize any of the
above described communication modes including Random time slot mode,
Random Piggy Tailing mode, and Linear time mode. Also, communication
mode may be indicative of scheduling method to be utilized for transmission
of the DRIS along with the set of DRIPs while the manner of transmission
utilized within each communication mode may define the scheduling method.
[0052] According to another implementation of the present subject
matter, the data packets may also be shared with other communication
devices through a validated and authenticated certified authority (CA). The
CA may be authorized to validate data transmission between communication
devices. The functionality of CA may either be implemented by a third party
or, may be included within one of the transmitting or receiving communication
device.
[0053] In one implementation of the present subject matter, the CA
may validate communication devices for data communication. The validation
may be done by authenticating the communication devices to be genuine and
non malicious. Once the authentication is complete, the communication
17
devices may share data, such as DRIPs and their corresponding DRIS with
each other.
[0054] In another implementation of the present subject matter, the CA
may determine DRIS based on which DRIP shall be generated by the
transmitting communication device. In such an implementation, the CA may
communicate the DRIS to the transmitting communication device for
generation of DRIPs and to the receiving communication devices for decoding
of the received DRIPs. In such implementation, the transmitting
communication device may merely generate and communicate DRIPs and
CA may handle generation and communication of DRIS. Since the CA may
generate and share DRIS, sharing of the DRIS may be limited to the intended
and trusted recipients.
[0055] For the purpose of secure transmission of data between the
communication devices, in another implementation of the present subject
matter, the communication device may transmit the DRIS to the other
communication devices through the CA. Similar to other implementation,
sharing of the DRIS by the communication devices through the CA may also
allow limited share of the DRIS with merely the intended and trusted
recipients. As described earlier, during the transmission of the DRIS to the
CA, the communication devices may determine a scheduling method based
on determination of any one of the above described communication modes,
such as the Random time slot mode, the Random Piggy Tailing mode, and
the Linear time mode; and a corresponding manner of transmission.
[0056] Therefore, communicating DRIS packets based on the above
described methods, to other communication devices, allow secure exchange
of data, such as configuration of data packing used for the generation of the
set of DRIPs. Further, since the described technique utilizes interleaving
method for error correction, its implementation on potable devices does not
18
attract any extra resources and reduces the power consumption. The
described methods may be implemented in communication device, such as
active and passive RFIDs, to increase security of data transfer. Further, the
described methods may also be implemented in various modes of existing
data transfer, like Internet, Wi-Fi, NFC, cloud, Software Defining Network
(SDN), software optical networks, and other packed based communications in
wired, wireless, or optical networks. Further, the described methods may be
implemented in memory banks, storage devices, cloud storage facilities and,
in protocols for transferring or moving data among the storage devices.
Various applications which entail higher security, such as Banking, ID
verification, payment transactions, and point of sales may also utilize the
described methods for the purpose of enhanced security during data transfer
and communication of sensitive and valuable personal information.
[0057] Further, the techniques described above may allow real time
sharing of DRIS information, such that the receiving computing devices can
determine decoding methods for de-interleaving of data packets of the set of
DRIPs. The techniques may provide real time security to the data being
communicated by the communication devices as the communication mode
and the configuration of data packing for set of DRIPs may be randomly and
dynamically changed from time to time.
[0058] In implementation of a CA, information of every transmission
may be updated with the central CA where both the transmitting
communication device and the receiving communicating device shall be ready
for receiving next interleaving packets in accordance with the DRIS. This shall
allow establishment of authenticated transmission link between the
transmitting communication device and the receiving communication device
without being to authenticate each other.
19
[0059] These and other implementations of the present subject matter
would be described in greater detail in conjunction with the following figures.
While aspects of described secure data communication can be implemented
in any number of different environments, and/or configurations, the
implementations are described in the context of the following system(s).
[0060] It should be noted that the description merely illustrates the
principles of the present subject matter. It will thus be appreciated that those
skilled in the art will be able to devise various arrangements that, although not
explicitly described herein, embody the principles of the present subject
matter and are included within its spirit and scope. The manner in which the
systems and methods, for secure data communication, shall be implemented
has been explained in detail with respect to the Fig. 1-9.
[0061] Fig. 1 illustrates a data communication environment 100, in
accordance to an implementation of the present subject matter. In one
implementation, the data communication environment 100 implements a data
transmitting system 102-1 and a data receiving system 102-2 for the purpose
of secure data communication. For the sake of explanation, the data
transmitting system 102-1 and a data receiving system 102-2 are commonly
referred to as data communication system (DCS) 102, hereinafter. The DCS
102 may be implemented in any of the communication devices 104-1, 104-2,
104-3, …, 104-N. The communication devices 104-1, 104-2, 104-3, …,104-N
are collectively referred to as communication devices 104 and individually as
communication device 104, hereinafter. The communication devices 104 may
communicate with each other and exchange data through a communication
network 106.
[0062] The communication devices 104 may include, but are not limited
to, desktop computers, hand-held devices, laptops or other portable
computers, tablet computers, mobile phones, PDAs, Smartphones,
20
communication devices at point of sales, and the like. Communication
devices 104 may also include data cards, mobile adapters, wireless (WiFiTM)
adapters, routers, a wireless modem, a wireless communication device, a
cordless phone, a wireless local loop (WLL) station, and the like. As
communication devices 104 may be stationary or mobile and may also be
understood to be a mobile station, a terminal, an access terminal, a
subscriber unit, a station, etc.
[0063] The exchange of data between the communication devices 104
may occur through the communication network 106 which may be a wireless
or a wired network, or a combination thereof. The network 106 can be a
collection of individual networks, interconnected with each other and
functioning as a single large network (e.g., the internet or an intranet).
Depending on the technology, the communication network 106 may allow
point to point communication between the communication devices or, may
allow communication with the help of various network entities, such as
gateways, routers; however, such entities have been omitted for ease of
understanding.
[0064] As described above, the data communication system 102 may
include the data transmitting system 102-1 and the data receiving system
102-2. For the purpose of explanation, the communication device 106-1 may
function as a transmitter and implement the data transmitting system 102-1
while the communication device 106-3 may function as a receiver and
implement the data receiving system 102-2.
[0065] In one implementation of the present subject matter, the data
communication system 102 may include processor(s) 114, depicted as
processor 114-1 included in the data transmitting system 102-1 and as
processor 114-2 included in the data receiving system 102-2. The
processor(s) 114 may include microprocessors, microcomputers,
21
microcontrollers, digital signal processors, central processing units, state
machines, logic circuitries and/or any other devices that manipulate signals
and data based on operational instructions. The processor(s) 114 can be a
single processing unit or a number of units, all of which could also include
multiple computing units. Among other capabilities, the processor(s) 114 are
configured to fetch and execute computer-readable instructions stored in one
or more computer readable mediums.
[0066] The data communication system 102 may also include
interface(s) 116, depicted as interface 116-1 in the data transmitting system
102-1 and as interface 116-2 in the data receiving system 102-2. The
interfaces 116 may include a variety of interfaces that allow the data
communication system 102 to interact with other communication devices 104.
The interfaces 116 may facilitate multiple communications within a wide
variety of networks and protocol types, including wired networks, for example,
LAN, cable, etc., and wireless networks, for example, WLAN, cellular,
satellite-based network, SDN, cloud, Visible Light Communication (VLC),
software defined optic network, Machine to Machine (M2M) network, short
range network, long range network, WiGigabit, BDMA and similar radio
access networks (RAN), such as second generation (2G) RAN, third
generation (3G) RAN, fourth generation RAN (4G), and fifth generation (5G)
RAN.
[0067] The data communication system 102 may further include
memory 108 depicted as memory 108-1 in the data transmitting system 102-1
and as memory 108-2 in the data receiving system 102-2. The memory 108
may include any computer-readable medium known in the art including, for
example, volatile memory, such as static random access memory (SRAM)
and dynamic random access memory (DRAM), and/or non-volatile memory,
22
such as read only memory (ROM), erasable programmable ROM, flash
memories, hard disks, optical disks, and magnetic tapes.
[0068] Further, the data communication system 102 may further
include module(s) 110 and data 112. The module 110 has been depicted as
module 110-1 in the data transmitting system 102-1 and as module 110-2 in
the data receiving system 102-2. The modules 110 may include routines,
programs, objects, components, data structures, and the like, which perform
particular tasks or implement particular abstract data types. The modules 110
may further include modules that supplement applications on the data
communication system 102, for example, modules of an operating system.
The data 112 serves, amongst other things, as a repository for storing data
that may be fetched, processed, received, or generated by one or more of the
modules 110. Although the data 112 is shown internal to the data transmitting
system 102-1 and the data receiving system 102-2, it may be understood that
the data 112 can reside in an external repository (not shown in figure).
[0069] In one implementation, the modules 110-1 of the data
transmitting system 102-1 includes a DRIS generation module 118, a data
communication module 120-1, a DRIS scheduling module 122, and other
module(s) 124-1. In said implementation, the data 112-1 of the data
transmitting system 102-1 includes DRIS data 126-1, DRIP data 128-1, and
other data 130-1. Similarly, the modules 110-2 of the data receiving system
102-2 include a data construction module 132, a data communication module
120-2, a DRIS de-scheduling module 134, and other module(s) 124-2. In said
implementation, the data 112-2 of the data receiving system 102-2 includes
DRIS data 126-2, DRIP data 128-2, and other data 130-2. For the ease of
explanation, the other module(s) 124-1 of the data transmitting system 102-1
and, the other module(s) 124-2 of the data receiving system 102-2 have been
commonly referred to as other modules 124.
23
[0070] The other module(s) 124 may include programs or coded
instructions that supplement applications and functions, for example, routing
encapsulation support modules, programs in the operating system of the data
communication system 102, etc.
[0071] The various modules described herein may be implemented or
performed with a general-purpose processor, a digital signal processor
(DSP), an application specific integrated circuit (ASIC), a field programmable
gate array (FPGA) or other programmable logic device, discrete gate or
transistor logic, discrete hardware components, or any combination thereof
designed to perform the functions described herein. Further the functionalities
of various modules may be embodied directly in hardware and executed by a
processor.
[0072] In operation, the data transmitting system 102-1 may transmit
data to other communication devices 104 which may be received by the data
receiving system 102-2 through the communication network 106. The
explanation of the implementation has been made hereinafter in reference to
near field communication (NFC), a standard for communication devices to
establish radio communication, for secure exchange of information.
[0073] According to an implementation of the present subject matter,
the data transmitting system 102-1 may generate set of DRIPs based on a
pre defined configuration of data packing governed by a corresponding DRIS.
The DRIS may include information about the randomizers utilized for the
purpose of set of DRIP generation which may define: selection of either a 2-D
or a 3-D matrix to be utilized for interleaving, determination of number of
columns for the matrix to be utilized, determination of number of rows for the
matrix to be utilized, determination of number of layers for the matrix to be
utilized in case of a 3-D matrix selection, determination of data filling format to
be adopted for the purpose of data packing for the selected matrix,
24
determination of data releasing format to be adapted for the purpose of data
packing for the selected matrix, determination of data filling order into the
selected matrix, and determination of data releasing order from the selected
matrix. Further, the generation of DRIPs may also be based on random skip
counts (RSC) where the pre defined configuration of data packing may be
randomly modified to generate DRIPs. Hence, the DRIS based on which the
DRIPs are generated may also include RSC.
[0074] As explained earlier, the set of DRIPs can be decoded by the
communication devices 104 receiving the set of DRIPs using the DRIS in two
ways, one based on the complete DRIS system details where the details such
as structure of randomizers and other entities utilized for the purpose of set of
DRIP generation are communicated, and another based on DRIS value
settings where only the value of randomizers and other entities utilized for the
purpose of set of DRIP generation are communicated. Hence, the DRIS
generation module 118 may either generate a DRIS system details
(DRIS_SD) data packet or a DRIS value setting (DRIS_VS) data packet. It
would be appreciated that based on the DRIS_SD, the DRIS value settings
may be derived, however, vice versa may not be possible.
[0075] During exchange of information between the transmitting
communication device 104 and, the receiving communication device 104, the
sharing of either the DRIS_SD data packet, or the DRIS_VS data packet may
be based on DRIS preferences of communication devices 104. In one
implementation of the present subject matter, the DRIS preferences may
include, but not limited to, capability of communication device 104, duration of
communication, and probability of attacks.
[0076] In case the receiving communication device 104 is not capable
of generating either the value settings that correspond to configuration of data
packing of set of DRIPs or the set of DRIPs, based on system details such as
25
structure of randomizers, the communication of DRIS_SD may not be
necessitated. In such situation, the DRIS_VS may be communicated to the
receiving communication device 104 for correct decoding of the
corresponding set of DRIPs. However, in case the receiving communication
device 104 is capable of generating set of DRIPs based on DRIS_SD, either
the DRIS_SD or DRIS_VS may be communicated. Further, in situations
where the duration of communication between the communicating devices is
short term, the communication of DRIS_VS may be preferred rather than
communication of DRIS_SD. Similarly, in situations where the probability of
attack on data communicated between the communication devices is high,
the communication devices may prefer to share the DRIS_SD data packets
where more number of settings changes are communicated, making attack on
communicated data more difficult.
[0077] Hence, based on the DRIS preferences, the DRIS generation
module 118 may either generate the DRIS_SD data packets, or DRIS_VS
data packets for communication to the receiving communication devices 104.
As described earlier, for the purpose of explanation, the communication of
any of the DRIS_SD, or the DRIS_VS data packet has been referred to as
communication of DRIS packet.
[0078] In one implementation of the present subject matter, the DRIS
scheduling module 122 determines a channel through which the DRIS
packets are to be communicated to other communication devices 104 based
on a channel determination parameter. The channel determination parameter
may define whether the DRIS to be communicated is through the same
channel through which the set of DRIPs are communicated, or through some
other channel. In operation, the determination of channel through which the
DRIS is to be transmitted may be randomly selected. The value of the
channel determination parameter may be identified based on a channel
26
randomizer. Based on the values of the channel randomizer, value of channel
determination parameter may be defined for selection of a channel for DRIS
transmission. In said implementation, the DRIS scheduling module 122 may
determine the value of the channel determination parameter and may decide
to transit DRIS packets based on the value.
[0079] For example, it may be defined that if the value of the channel
randomizer is an even number, the channel determination parameter may be
set with a positive value. Similarly, if the value of the channel randomizer is
an odd number, the channel determination parameter may be set to a
negative value. In such situations, based on a positive or negative value of
the channel determination parameter, the DRIS scheduling module 122 may
communicate the DRIS packets. In one implementation, based on a positive
value of the channel determination parameter, the DRIS scheduling module
122 may communicate the DRIS through the same channel and; based on a
negative value of the channel determination parameter, the DRIS scheduling
module 122 may communicate the DRIS through another channel. Although it
has been described that the values of the channel determination parameter
may be based on a channel randomizer, it would be appreciated that the
value of the channel determination parameter may be based on other factors
like channel conditions, probability of attacks, etc. Further, other indicators
instead of positive and negative values for channel determination parameter
may be used, such as binary values for determination of channel for
transmission of DRIS.
27
[0080] In another implementation, the DRIS scheduling module 122
may determine the transmission of DRIS packets based on preference of
communication devices 104. In situations where the transmitting
communication device 104, such as the communication device 104-1 and the
receiving communication device 104, such as the communication device 104-
3 agree for communication of DRIS packets through a mutually agreed
channel, the DRIS scheduling module 122 may transmit the DRIS through
such agreed channel.
[0081] Upon determination of the communication channel, the DRIS
scheduling module 122 may determine scheduling method to be adopted for
transmission of DRIS packets. The determination of the scheduling method
may be based on identification of a communication mode along with a
corresponding manner of transmission. The communication mode which may
be utilized for the purpose of determining the scheduling method for the
transmission of DRIS may include, but not limited to, Random time slot mode,
Random Piggy Tailing mode, and Linear time mode. In situations when it is
determined that the DRIS are to be communicated through same channel,
any one of the communication mode may be utilized to transmit the DRIS
packets in the same channel through which the set of DRIPs are
communicated, in a pre-defined manner. Similarly, when it is determined that
the DRIS are to be communicated through another channel, any one of the
communication mode may be utilized to transmit the DRIS packets through a
different channel other than through which the set of DRIPs are
communicated.
[0082] The DRIS may be transmitted in any of the communication
mode through the same channel, through which the set of DRIPs are
transmitted. For the sake of explanation and better clarity, various
28
implementations of such transmissions have been discussed in conjunction
with the Fig. 2 to Fig. 5.
[0083] As described earlier, based on a configuration of data packing
determined based on the DRIS, a set of DRIPs may be generated. For
example, a set of DRIPs (DRIP1) may be data packed based on a
configuration defined by DRIS1 and another set of DRIPs (DRIP2) may be
data packed based on a configuration defined by DRIS2.
[0084] For the purpose of understanding, a DRISn depicted in the
figures may include either the DRIS_VS or DRIS_SD, or both, corresponding
to a set of DRIPs, depicted as DRIPn, where ‘n’ represent nth set of data
packets to be transmitted. For example, first set of DRIPs packed based on a
particular configuration of data packing is referred to as ‘DRIP1’ and the
corresponding DRIS is referred to as DRIS1. Similarly, the next set of DRIPs
packed based on another configuration of data packing is referred to as
‘DRIP2’ and the corresponding DRIS is referred to as ‘DRIS2’. Further, since a
DRIPn may include multiple data packets, individual data packet belonging to
the DRIPn have been represented as DRIPn-m, where m represent the mth
data packet from amongst the set of all data packets included in the DRIPn.
For example, third data packet of DRIP3 packed based on DRIS3 is
represented as DRIP3-3 and, fifth data packet of DRIP7 packed based on
DRIS7 is represented as DRIP7-5. It would be appreciated that if DRIPn
includes 4 data packets, individual data packets of DRIPn may be represented
as DRIPn-1, DRIPn-2, DRIPn-3, and DRIPn-4.
[0085] In case the communication mode is determined to be random
time slot mode by the DRIS scheduling module 122, the transmission of DRIS
packets may be done in a random manner. The DRIS scheduling module 122
may transmit the DRIS corresponding to one set of DRIPs randomly and, the
DRIS corresponding to another set of DRIPs also randomly. In one
29
implementation, the manner of transmission of a DRIS corresponding to the
set of DRIPs may either be before the transmission of DRIPs, after the
transmission of the set of DRIPs, or during the transmission of the set of
DRIPs. The DRIS scheduling module 122 may determine the manner of
transmission of the DRIS either before, after, or during the transmission of the
set of DRIPs based on the RTS parameter.
[0086] The RTS parameter may be based on a randomizer where the
value of the randomizer may define the RTS parameter and in-turn, the DRIS
scheduling module 122 may determine whether to transmit the DRIS either
before, after, or during the transmission of its corresponding set of DRIPs,
based on the defined RTS parameter. For example, the DRIS scheduling
module 122 may implement a randomizer that is configured to generate
random values. In said situation, the randomizer may be an 8 bit randomizer
where based on two most significant bits (MSBs), the value of the RTS
parameter may be determined. Table 1 below depicts the determination of
RTS parameter based on the MSBs of the randomizer.
MSBs RTS Parameter
01 Transmission-
Before
10 Transmission-After
11 Transmission-
During
Table 1
[0087] It would be understood that the randomizer may achieve
randomization based on any of known techniques, such as pseudo-random
binary sequencing (PRBS), true-random binary sequencing (TRBS), ExOR,
and polynomial expressions.
30
[0088] In one implementation, if the DRIS scheduling module 122
determines the RTS parameter to be “Transmission-Before”, the DRIS
scheduling module 122 may schedule the transmission of DRIS packets in a
manner as depicted in Fig. 2(a).
[0089] Fig. 2(a) depicts the manner in which DRIS packets are
transmitted and received through a communication channel based on the
random time slot mode where the RTS parameter defines the transmission of
DRIS to be before the transmission of the corresponding set of DRIPs. The
transmission of data packets has been depicted through a transmission (TX)
channel while the reception of the transmitted data packets has been
depicted through a receiving (RX) channel.
[0090] As depicted in the figure, during transmission of data packets,
the DRIS1 (202-1) corresponding to the DRIP1 (including DRIP1-1, DRIP1-2,
and DRIP1-3) may be scheduled for transmission before the scheduled
transmission of DRIP1 starting at time instance T1. Since, the transmission of
DRIP1 is from time instance T1 to time instance T2, depicted by the time
period ‘T 204-1’, the transmission of DRIS1 (202-1) has been scheduled
before the time instance T1.
[0091] Further, since the DRIS scheduling module 122 schedules the
transmission of DRIS packets before the transmission of corresponding set of
DRIPs, the DRIS2 (202-2) corresponding to the DRIP2 is also transmitted
before the transmission of DRIP2. Since the transmission of DRIP2 is
scheduled from time instance T3, the transmission of DRIS2 is scheduled prior
to the time instance T3.
[0092] According to an implementation of the present subject matter,
the DRIS scheduling module 122 may determine the position of transmission
of DRIS among the data packets, before the transmission of corresponding
31
set of DRIPs, based on a randomizer. In other words, in real time data
transmission, when the DRIS generation module 118 generates a DRIS for a
new set of DRIPs, the DRIS scheduling module 122 may determine an
appropriate position of DRIS transmission based on a randomizer, before the
actual transmission of the corresponding set of DRIPs. It may occur that a
DRISn generated by the DRIS generation module 118 may be generated
before the complete transmission of previous set of DRIPs, such as DRIPn-1.
In such a situation based on the randomizer, the DRIS scheduling module
122 may determine the position for transmission of the DRISn, during the
transmission of data packets of DRIPn-1.
[0093] For instance, in the described Fig. 2(a), the DRIS2 (202-2) may
be generated after the transmission of DRIP1-1. In the described situation,
since the DRIP2 includes 3 data packets, the transmission of DRIS2 (202-2)
may either be scheduled immediately after the transmission of DRIP1-1, or
may be scheduled after the transmission of DRIP1-2. The transmission of the
DRIS2 (202-2) may also be scheduled after the transmission of the final data
packet of DRIP1, the DRIP1-3. The DRIS scheduling module 122 may utilize
the randomizer to select an appropriate position for the DRIS transmission.
[0094] It would be understood that in scenarios where there are ‘N’
data packets left to be transmitted, of an existing transmitting set of DRIPs,
the DRIS scheduling module 122 may schedule the transmission of DRIS
corresponding to next set of DRIPs at ‘N+1’ slots. For example, if there are a
total of ‘10’ data packets to be transmitted and ‘4’ of these data packets have
been already transmitted, there would be merely ‘6’ data packets left to be
transmitted and, the DRIS scheduling module 122 may have ‘7’ available
slots to transmit DRIS corresponding to next set of DRIPs.
[0095] In one implementation, similar to the randomizer utilized for
determination of the RTS parameter, the DRIS scheduling module 122 may
32
utilize a randomizer to randomly select from any one of the ‘N+1’ available
slots for scheduling the transmission of the DRIS. In the above described
example, the DRIS scheduling module 122 may utilize the randomizer to
determine a slot from amongst the available ‘7’ slots to transmit the DRIS
corresponding to the next set of DRIPs. In the depicted Fig. 2(a), based on
the randomizer, the DRIS scheduling module 122 may have identified that the
DRIS2 (202-2) should be transmitted after the transmission of DRIP1-2.
[0096] Similarly, for the transmission of DRIS3 (202-3), the DRIS
scheduling module 122 may have identified, based on the randomizer, that
the DRIS3 (202-3) should be scheduled for transmission after the complete
transmission of all the data packets from the DRIP2. It would be appreciated
that the time taken ‘T 204-1’ for the transmission of complete DRIP1 may not
be more that the time taken ‘T 204-2’ for the transmission of the complete
DRIP2, since the size of data packets included in DRIP1 may be different from
that of DRIP2.
[0097] In accordance to an implementation of the present subject
matter, if the DRIS scheduling module 122 determines the RTS parameter to
be “Transmission-After”, the DRIS scheduling module 122 may schedule the
transmission of DRIS packets in a manner as depicted in Fig. 2(b).
[0098] Fig. 2(b) depicts the manner in which DRIS packets are
transmitted and received through a communication channel based on the
random time slot mode where the RTS parameter defines the transmission of
DRIS to be after the transmission of the corresponding set of DRIPs. The
transmission of data packets has been depicted through the TX channel while
the reception of the transmitted data packets has been depicted through the
RX channel.
33
[0099] As depicted in the figure, during transmission of data packets,
the DRIS1 (206-1) corresponding to the DRIP1 (including DRIP1-1 and DRIP1-2)
may be scheduled for transmission after the scheduled transmission of
DRIP1. The transmission of DRIP1 may last from time instance T1 to time
instance T2, for time duration of ‘T 208-1’. Since the DRIS1 (206-1) is to be
transmitted after the complete transmission of DRIP1, the DRIS1 is scheduled
for transmission after the time instance T2. The position of transmission of the
DRIS1 (206-1) may again be determined by the DRIS scheduling module 122
based on a randomizer. The random value of the randomizer may be utilized
for randomly selecting a position of DRIS1 (206-1) transmission, after the time
instance T2. In the described situation, the DRIS scheduling module 122 may
determine the position of transmission of DRIS1 (206-1) after the second data
packet of DRIP2 (DRIP2-2). Similarly, for the transmission of DRIS2 (206-2),
the DRIS scheduling module 122 may have identified, based on the
randomizer, that the DRIS2 (206-2) should be scheduled for transmission after
the transmission of first data packet of the DRIP3 (DRIP3-1).
[00100] In accordance to another implementation of the present subject
matter, if the DRIS scheduling module 122 determines the RTS parameter to
be “Transmission-during”, the DRIS scheduling module 122 may schedule the
transmission of DRIS packets in a manner as depicted in Fig. 2(c).
[00101] Similar to Fig. 2(a) and 2(b), Fig. 2(c) depicts the manner in
which DRIS packets are transmitted and received through a communication
channel based on the random time slot communication mode where the RTS
parameter defines the transmission of DRIS to be during the transmission of
the corresponding set of DRIPs. The transmission of data packets has been
depicted through the TX channel while the reception of the transmitted data
packets has been depicted through the RX channel.
34
[00102] Since the DRIS is to be transmitted during the transmission of
the corresponding set of DRIPs, the DRIS scheduling module 122 may
schedule the transmission of DRIS based on a randomizer, to determine a
position for transmission. For example, if there are N data packets in a set of
DRIPs, to transmit the DRIS during the transmission, the DRIS scheduling
module 122 may randomly schedule the transmission of the DRIS after the
transmission of the first data packet and before the transmission of the last
data packet. In such as scenario, the available slots for transmission of DRIS
are ‘(N-2) + 1’, that is ‘N-1’. To randomly select any one of the available slots
for transmission, the DRIS scheduling module 122 may utilize a randomizer
similar to the one utilized for the purpose of determination of transmission
slots in a situation of ‘transmission–after’ or ‘transmission–before’. As
depicted in the figure, the DRIS1 (210-1) is scheduled for transmission during
the transmission of DRIP1. Since DRIP1 has merely ‘2’ data packets, the
DRIS scheduling module 122 can schedule the transmission of the DRIS1
(210-1) at ‘(2-1)’, that is ‘1’ position. Hence, the transmission of DRIS1 (210-1)
has been scheduled after the transmission of DRIP1-1 (after time instance T1)
and before the transmission of DRIP1-2 (before the time instance T2).
[00103] For the transmission of DRIS2 (210-2), the DRIS scheduling
module 122 may have randomly chosen, based on a randomizer, from among
two available positions ‘3-1 = 2’ to schedule the transmission of DRIS2 (210-
2), after the transmission of second data packet of DRIP2, DRIP2-2.
[00104] It would be appreciated that the randomizers utilized by the
DRIS scheduling module 122 for scheduling the transmission of DRIS
packets may either be same for all the transmission methods, such as before
the transmission of set of DRIPs, after the transmission of the set of DRIPs,
and during the transmission of the set of DRIPs or; may either be different for
different transmission methods, such as different for transmission before the
35
transmission of the set of DRIPs and different for transmission after the
transmission of the set of DRIPs. Further, as described earlier, each
randomizer utilized by the DRIS scheduling module 122 may achieve
randomization based on any of known techniques, such as pseudo-random
binary sequencing (PRBS), true-random binary sequencing (TRBS), ExOR,
and polynomial expressions.
[00105] According to an implementation of the present subject matter,
the communication mode chosen for the transmission of DRIS may also be
Random Piggy tailing mode instead of the random time slot mode. In
situations where the communication mode is Random Piggy tailing mode, the
DRIS scheduling module 122 may either append or prepend the DRIS packet
to be transmitted along with other data packets to form a common data
packet. For the sake of explanation, the method of appending or prepending
the DRIS packet with other data packets for the purpose of transmission has
been referred to as piggy tailing hereinafter. The DRIS scheduling module
122, upon piggy tailing the DRIS packet with other data packet, may transmit
the formed common packet through the communication channel. In said
implementation, the DRIS scheduling module 122 may piggy tail the DRIS
packet with either data packets to be transmitted before transmission of the
set of DRIPs, after transmission of the set of DRIPs, during transmission of
the set of DRIPs, or in a fragmented manner.
[00106] In one implementation, the DRIS scheduling module 122 may
determine whether to piggy tail the DRIS before, after, during, or in
fragmented manner, based on a piggy tailing parameter. In said
implementation, the piggy tailing parameter may be defined based on a
randomizer. Similar to the randomizer utilized for the purpose of defining the
RTS parameter, the DRIS scheduling module 122 may utilize another
randomizer to define the piggy tailing parameter.
36
[00107] For example, the DRIS scheduling module 122 may implement
a randomizer which is configured to generate random values. In said
situation, the randomizer may be an 8 bit randomizer where based on two
most significant bits (MSBs), the value of the piggy tailing parameter may be
determined. Table 2 below depicts the determination of piggy tailing
parameter based on the MSBs of the randomizer.
MSBs Piggy Tailing Parameter
00 Piggy Tailing-Before
01 Piggy Tailing-After
10 Piggy Tailing-During
11 Piggy Tailing-
Fragmented
Table 2
[00108] According to the above described Table 2, the DRIS scheduling
module 122 may choose to piggy tail the DRIS to be transmitted, with data
packets to be transmitted before the transmission of the corresponding set of
DRIPs, if the MSBs of the randomizer are ‘00’. Similarly, if the MSBs of the
randomizer are identified to be ‘01’, the DRIS scheduling module 122 may
piggy tail the DRIS with other data packets to be transmitted after the
transmission of the corresponding set of DRIPs. Further, the DRIS scheduling
module 122 may piggy tail the DRIS with data packets being transmitted
during the transmission of the corresponding set of DRIPs, if the MSBs of the
randomizer are ‘10’. In one implementation of the present subject matter, if
the MSBs of the randomizer are ‘11’, the DRIS scheduling module 122 may
fragment the DRIS into smaller DRIS packets to generate fragmented DRIS
packets and may piggy tail the fragmented DRIS packets with multiple data
packets. Although, the description herein has been described such that the
37
DRIS packets to be transmitted are piggy tailed along with data packets
belonging to the set of DRIPs, however, it would be understood that the DRIS
may be piggy tailed with any data packet, other than data packets of the set
of DRIPs.
[00109] In one implementation, if the DRIS scheduling module 122
determines the piggy tailing parameter to be “Piggy Tailing-Before”, the DRIS
scheduling module 122 may piggy tail the DRIS packets in a manner as
depicted in Fig. 3(a).
[00110] Fig 3(a) depicts the manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing mode where the piggy tailing parameter defines the
piggy tailing of DRIS to be with data packets being transmitted before the
transmission of the corresponding set of DRIPs. The transmission of data
packets has been depicted through the TX channel while the reception of the
transmitted data packets has been depicted through the RX channel.
[00111] The DRIS scheduling module 122 may transmit the DRIS1 (302-
1) corresponding to DRIP1 (including DRIP1-1, DRIP1-2, and DRIP1-3) prior to
the transmission of any of the data packets of the DRIP1. Since the
transmission of data packets of DRIP1 is initiated from the time instance T1,
the DRIS1 (302-1) is transmitted prior to the time instance T1. Similarly, to
transmit DRIS2 (302-2) prior to the transmission of DRIP2, the DRIS
scheduling module 122 may piggy tail the DRIS2 (302-2) along with any data
packet of DRIP1.
[00112] In one implementation, the DRIS scheduling module 122 utilizes
a randomizer to determine a data packet from the set of DRIPs to which the
DRIS can be piggy tailed. It would be understood that if there are ‘N’ data
packets in the set of a DRIPs, the DRIS scheduling module 122 may piggy tail
38
the DRIS corresponding to a forthcoming set of DRIPs with any of the N data
packets. Based on the randomizer, the selection of the data packet, from
amongst the N available data packets may be made by the DRIS scheduling
module 122. This would allow random selection of data packet to be piggy
tailed, thereby providing more security to the DRIS transmission.
[00113] The DRIS2 (302-2) may be piggy tailed with DRIP1-2 to form a
common data packet and may be transmitted before the time instances T2
and T3. Similarly, the DRIS3 (302-3) may be piggy tailed with the second data
packet of DRIP2 and may be transmitted as a common data packet along with
the transmission of DRIP2-2.
[00114] In another implementation, if the DRIS scheduling module 122
determines the piggy tailing parameter to be “Piggy tailing-After”, the DRIS
scheduling module 122 may piggy tail the DRIS packets in a manner as
depicted in Fig. 3(b).
[00115] Fig 3(b) depicts the manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing communication mode where the piggy tailing parameter
defines the piggy tailing of DRIS to be with data packets being transmitted
after the transmission of the corresponding set of DRIPs. The transmission of
data packets has been depicted through the TX channel while the reception
of the transmitted data packets has been depicted through the RX channel.
[00116] The DRIS scheduling module 122 may schedule piggy tailing of
a DRISn that defines the configuration of data packing of DRIPn, during
transmission of next set of DRIPs (DRIPn+1). In other words, the DRIS
corresponding to a set of DRIPs may be piggy tailed with any of data packets
from a next set of DRIPs. In the figure, it has been depicted that the DRIS
scheduling module 122 piggy tails the DRIS1 (306-1) along with the second
data packet of DRIP2, where the transmission of DRIP1 ends at the time
39
instance T2. Similarly, the DRIS scheduling module 122 may piggy tail the
DRIS2 (306-2) along with the first data packet of DRIP3. It would be
appreciated that the selection of both the data packets from the set of DRIPs,
DRIP2 and DRIP3 for piggy tailing the DRIS1 (306-1) and DRIS2 (306-2),
respectively is based on a randomizer utilized by the DRIS scheduling module
122.
[00117] In one implementation, if the DRIS scheduling module 122
determines the piggy tailing parameter to be “Piggy tailing-during”, the DRIS
scheduling module 122 may piggy tail the DRIS packets in a manner as
depicted in Fig. 3(c).
[00118] Fig 3(c) depicts the manner in which DRIS packets are
transmitted and received through a communication channel based on the
random piggy tailing mode where the piggy tailing parameter defines the
piggy tailing of DRIS to be with data packets of the corresponding set of
DRIPs. The transmission of data packets has been depicted through the TX
channel while the reception of the transmitted data packets has been
depicted through the RX channel.
[00119] In said implementation, the DRIS scheduling module 122 may
piggy tail the DRIS corresponding to a set of DRIPs with one of the data
packets of the same set of DRIPs. In other words, a DRISn defining
configuration of data packing for a set of DRIPs (DRIPn) may be piggy tailed
with one of the data packets of the DRIPn. The DRIS scheduling module 122
may determine the data packet with which the DRIS is to be piggy tailed
based on a randomizer. Therefore, in a situation where there are ‘N’ data
packets in a DRIP, the DRIS scheduling module 122 may choose from
amongst the ‘N’ available data packets to piggy tail the DRIS.
[00120] As depicted in the figure, for the transmission of DRIS1 (310-1),
the DRIS scheduling module 122 may piggy tail it with first data packet
40
(DRIP1-1) of the corresponding set of DRIPs (DRIP1). It would be appreciated
that the DRIS scheduling module 122 may have piggy tailed the DRIS1 (310-
1) along with DRIP1-2 instead of with DRIP1-1, based on the value of the
randomizer. Similarly, DRIS2 (310-2) may be piggy tailed along with the
second data packet of the set of DRIPs (DRIP2). The DRIS scheduling
module 122 may identify DRIP2-2 for piggy tailing the DRIS2 (310-2), randomly
based on the randomizer. Hence, the DRIS scheduling module 122 may
piggy tail a DRIS corresponding to a set of DRIPs along with the one of the
data packets of the corresponding set of DRIPs.
[00121] In one implementation, if the DRIS scheduling module 122
determines the piggy tailing parameter to be “Piggy Tailing-Fragmented”, the
DRIS scheduling module 122 may piggy tail the DRIS packets in a manner as
depicted in Fig. 3(d) and Fig. 3(e).
[00122] In “Piggy Tailing-Fragmented” mode of transmission, the DRIS
scheduling module 122 may divide the DRIS to be transmitted into multiple
smaller DRIS packets to generate fragmented DRIS packets. Such
fragmented DRIS packets may then be individually piggy tailed with other
data packets, such as the data packets of the set of DRIPs. For example, first
DRIS (DRIS1) may be divided into 4 smaller data packets to form DRIS1-1,
DRIS1-2, DRIS1-3, and DRIS1-4. The fragmented DRIS packets of DRIS1 may
then be individually piggy tailed with data packets of DRIP2 which may include
5 data packets including DRIP2-1, DRIP2-2, DRIP2-3, DRIP2-4, and DRIP2-5. It
would be understood that in situation where the number of data packets from
the set of DRIPs to piggy tail the fragmented DRIS packets are more than the
number of fragmented DRIS packets, the choice of data packets from the set
of DRIPs to piggy tail the fragmented DRIS packets may be done randomly.
For instance, in the above described example, any of the data packets from
41
DRIP2 may be left while the other 4 data packets may be utilized for piggy
tailing the 4 fragmented data packets of the DRIS2.
[00123] In one implementation of the present subject matter, the DRIS
scheduling module 122 determines the number of data packets into which the
DRIS is to be fragmented based on a randomizer. The DRIS scheduling
module 122 may utilize an 8 bit randomizer, where based on the value of
some of the bits, the number of fragments of the DRIS may be determined.
For example, the DRIS scheduling module 122 may utilize Table 3 depicted
below for the purpose of fragments determination:
Randomizer
Bit value
Number of
Fragments
0 ONE
1 TWO
Table 3
[00124] Similar to the above depicted table, the DRIS scheduling
module 122 may also utilize more number of bits of the randomizer for the
purpose of fragments determination where the fragmentation is to be done in
more than merely two data packets. For example, the DRIS scheduling
module 122 may utilize 3 bits of the randomizer to select from 8 possible
ways of fragmentation of the DRIS. Table 4 depicted below explains the use
of 3 bits by the DRIS scheduling module 122 for the purpose of fragments
determination:
Randomizer
Bits value
Number of
Fragments
000 ONE
42
001 TWO
010 THREE
011 FOUR
100 FIVE
101 SIX
110 SEVEN
111 EIGHT
Table 4
[00125] It would be appreciated that in one implementation, the DRIS
scheduling module 122 may utilize the number of bits based on the number of
data packets available for the purpose of piggy tailing. For example, if a set of
DRIPs includes merely 4 data packets, the DRIS scheduling module 122 may
not utilize 3 bits of the randomizer where the possibility of fragmentation of
DRIS into more than 4 data packets is available. Hence, the number of bits of
the randomizer that may be utilized by the DRIS scheduling module 122 to
determine number of fragmentations may be less than or equal to:
!" …(1)
Where N is the number of bits of the randomizer.
[00126] In another example, if the set of DRIPs include a maximum of 6
data packets, the DRIS scheduling module 122 may utilize
#" number
of bits from the randomizer, for the purpose of determination of number of
fragments.
[00127] To transmit the fragmented DRIS packet through the
fragmented mode, the DRIS scheduling module 122 may determine whether
the fragmented DRIS packet is to be transmitted before or after the
43
corresponding set of DRIPs. For example, when a DRISn is fragmented into
multiple small data packets for piggy tailing with other data packets, the piggy
tailing of the fragmented DRISn may either be with data packets of earlier
transmission (DRIP(n-1)), or may be with data packets of following
transmission (DRIP(n+1)).
[00128] In one implementation, the DRIS scheduling module 122 utilizes
another randomizer to determine whether the piggy tailing would be with the
earlier transmission or with the following transmission. In said implementation,
the least significant bits (LSB) of the randomizer may be utilized for the
purpose of determination. Table 5 below depicts the determination of scenario
based on the LSB of the randomizer.
LSB Fragmented Piggy
Tailing
0 Piggy Tailing-Before
1 Piggy Tailing-After
Table 5
[00129] Hence, in situation where based on the randomizer, the DRIS
scheduling module 122 determines to piggy tail the fragmented data packets
of the DRIS with data packets of the set of DRIPs to be transmitted before,
the piggy tailing may be done by the DRIS scheduling module 122 in manner
as explained in Fig. 3(d). Further similarly, in situation where based on the
randomizer, the DRIS scheduling module 122 determines to piggy tail the
fragmented data packets of the DRIS with data packets of set of DRIPs to be
transmitted after, the piggy tailing may be done by the DRIS scheduling
module 122 in manner as explained in Fig. 3(e).
[00130] Fig 3(d) and 3(e) depicts the manner in which fragmented DRIS
packets are transmitted and received through a communication channel
44
based on the random piggy tailing communication mode. Further, the piggy
tailing parameter may define transmission of DRIS based on fragmentation
and, piggy tailing the fragmented DRIS with data packets of set of DRIPs to
be transmitted earlier or with data packets of set of DRIPs to be transmitted
after, respectively. The transmission of data packets has been depicted
through the TX channel while the reception of the transmitted data packets
has been depicted through the RX channel.
[00131] As depicted in the Fig. 3(d), DRIS1 (308-1) corresponding to
DRIP1 is transmitted prior to the transmission of data packets of DRIP1,
before time instance T1. Since the transmission of data packets of DRIP2 start
from time instance T3, the DRIS2 is transmitted before the transmission of
DRIP2 and, along with the data packets of DRIP1. In the current scenario, the
DRIS scheduling module 122 may fragment the DRIS1 in two data packets
based on a randomizer. The two fragmented DRIS1 packets have been
referred to as DRIS1-1 (308-2.1) and DRIS1-2 (308-2.2). The DRIS scheduling
module 122 may now piggy tail the two fragmented DRIS packets with the
data packets of DRIP2. Based on another randomizer, the DRIS scheduling
module 122 may determine to piggy tail the first fragmented packet of DRIS2
(DRIS2-1) along with the first data packet of DRIP2 (DRIP2-1). Further, the
DRIS scheduling module 122 may also determine to piggy tail the second
fragmented packet of DRIS2 (DRIS2-2) along with the second data packet of
DRIP2 (DRIP2-2). It would be understood that instead of piggy tailing the two
fragmented data packets of DRIS2 with the first and second data packet of
DRIP2 (DRIP2-1 and DRIP2-2), the DRIS scheduling module 122 may have
also piggy tailed the two fragmented data packets of the DRIS2 with either the
first and third data packet of DRIP2 (DRIP2-1 and DRIP2-3) or, with the second
and third data packet of DRIP2 (DRIP2-2 and DRIP2-3).
45
[00132] Similarly, the DRIS scheduling module 122 may determine to
schedule the transmission of DRIS3 prior to the transmission of data packets
of DRIP3. The DRIS scheduling module 122, based on the randomizer, may
determine to not to fragment the DRIS3 and hence, randomly transmit the
DRIS3 data packet by piggy tailing with the second data packet of DRIP2.
[00133] In accordance with the transmission scheme depicted in Fig.
3(e), a DRISn packet corresponding to DRIPn is fragmented and piggy tailed
along with data packets of DRIPn+1, to be transmitted after the transmission of
DRIPn. DRIS1 corresponding to DRIP1 is fragmented by the DRIS scheduling
module 122 into two data packets, DRIS1-1 (310-1.1) and DRIS1-2 (310-1.2).
The two fragmented data packets of the DRIS1 are piggy tailed along with the
data packets of DRIP2. In the depicted figure, the data packets from DRIP1
are transmitted from time instance T1 to time instance T2. Hence, the
fragmented DRIS packets of DRIS1 are piggy tailed and transmitted after the
time instance T2. In the depicted scenario, the piggy tailing of the two
fragmented DRIS1 packets is with second data packet of DRIP2 (DRIP2-2) and
the third data packet of DRIP2 (DRIP2-3). Similarly, the DRIS packet
corresponding to DRIP2 is fragmented and transmitted along with the
transmission of data packets of DRIP3.
[00134] According to an implementation of the present subject matter,
the communication mode chosen for the transmission of DRIS may be the
linear time mode instead of the random time slot mode or the Random Piggy
tailing mode.
[00135] In situations where the communication mode chosen is the
linear time mode, the DRIS scheduling module 122 may schedule
transmission of a DRIS corresponding to a set of DRIPs either before the
transmission of the set of DRIPs, after transmission of the set of DRIPs,
adjacently before (pre-adjacent) the transmission of the set of DRIPs, or
46
adjacently after (post-adjacent) the transmission of the set of DRIPs. In one
implementation, the determination of whether the transmission of the DRIS
would be before, after, pre-adjacent, or post-adjacent is based on a linear
time parameter which may be based on a randomizer. In said implementation,
the DRIS scheduling module 122 may utilize bits of the randomizer for the
purpose of determination. The bits may be either two MSBs or two LSBs of
the randomizer. Table 6 below depicts the determination of scenario based on
MSBs of the randomizer.
MSBs Linear Time Parameter
00 Transmission-Before
01 Transmission-After
10 Transmission – Preadjacent
11 Transmission – Postadjacent
Table 6
[00136] Hence, based on the linear time parameter, if the value of the
randomizer is ‘00’, the DRIS scheduling module 122 may schedule the
transmission of the DRIS just prior to the transmission of its corresponding set
of DRIPs. If the value of the randomizer is ‘01’, the DRIS scheduling module
122 may schedule the transmission of the DRIS just after the transmission of
its corresponding set of DRIPs.
[00137] Similarly, if the value of the randomizer is ‘10’, the DRIS
scheduling module 122 may schedule the transmission of the DRIS, preadjacent
to the transmission of its corresponding set of DRIPs. During preadjacent
transmission of DRIS, the DRIS packet corresponding to a set of
DRIPs may be attached with the first data packet of the corresponding set of
47
DRIPs and transmitted as a single common data packet. For example, a
DRIS packet (DRIS1) corresponding to a set of DRIPs (DRIP1) may be
attached with the first data packet of DRIP1, i.e., DRIP1-1 to form the common
data packet. It would be appreciated that the attachment of the DRIS to the
first data packet of the corresponding set of DRIPs may ensure that during
the linear time mode of communication, when DRIS is transmitted in preadjacent
manner, configuration of data packing utilized for the entire set of
DRIPs is transmitted along with the first data packet.
[00138] In a similar manner, if the value of the randomizer is ‘11’, the
DRIS scheduling module 122 may schedule the transmission of the DRIS,
post-adjacent to the transmission of its corresponding set of DRIPs. During
post-adjacent transmission of DRIS, the DRIS packet corresponding to a set
of DRIPs may be attached with the last data packet of the corresponding set
of DRIPs and transmitted as a common data packet. For example, a DRIS
packet (DRIS3) corresponding to a set of DRIPs (DRIP3) may be attached
with the last data packet of DRIP3, i.e., DRIP3-5 (considering DRIP3 includes 5
data packets) to form the common data packet for transmission.
[00139] The transmission based on linear time mode may be
understood to be different from the random time slot mode since the
scheduling of DRIS corresponding to the set of DRIPs may either be just
before the transmission of the set of DRIPs or, just after the transmission of
the set of DRIPs and, the scheduling of the DRIS may not be done in a
random manner in this communication mode.
[00140] The manner in which DRIS may be transmitted based on linear
time mode when the DRIS corresponding to a set of DRIPs is transmitted
before the transmission of the set of DRIPs, has been depicted in Fig. 4(a), in
accordance to an implementation of the present subject matter. Similarly, the
manner in which DRIS is transmitted based on linear time mode when the
48
DRIS corresponding to a set of DRIPs is transmitted after the transmission of
the set of DRIPs has been depicted in Fig. 4(b), in accordance to an
implementation of the present subject matter. The transmission of DRIS
according to the pre-adjacent manner and post-adjacent manner has been
depicted in Fig 4(c) and Fig. 4(d), respectively.
[00141] Referring to Fig. 4(a), DRIS1 (402-1) corresponding to a set of
DRIPs (DRIP1) is transmitted right before the transmission of first data packet
from amongst the set of DRIP1. Since the transmission of DRIP1 is initiated at
time instance T1, the DRIS1 (402-1) is scheduled for transmission right before
the time instance T1. Similarly, after the complete transmission of DRIP1 at
time instance T2, transmission of DRIS2 may be scheduled, prior to the
transmission of DRIP2 which is scheduled at time instance T3. It would be
appreciated that in described mode of linear time mode, DRIS packet is
transmitted followed by corresponding set of DRIPs.
[00142] Referring to Fig 4(b), DRIS1 (404-1) corresponding to a set of
DRIPs (DRIP1) is transmitted right after the transmission of last data packet of
DRIP1. Since the transmission of DRIP1 is between time instance T1 and T2,
the DRIS1 (404-1) is scheduled for transmission after the time instance T2 and
prior to transmission of DRIP3 at time instance T3. Similarly, after the
complete transmission of DRIP2 at time instance T4, transmission of DRIS2
may be scheduled. It would be appreciated that in described mode of linear
time mode, DRIS packet is transmitted followed by corresponding set of
DRIPs.
[00143] Fig. 4(c) depicts the manner in which transmission of DRIS is
scheduled in linear time mode based on a pre-adjacent manner. As described
before, in the pre-adjacent manner of transmission, the DRIS is attached at
the starting of the first data packet of the corresponding set of DRIPs. Hence,
the DRIS1 (406-1) corresponding to the set of DRIPs (DRIP1) is attached with
49
the first data packet of DRIP1 (DRIP1-1). The transmission of data packets is
initiated at time instance T1 and the first data packet for transmission is the
common data packet. Similarly, after the transmission of DRIP1 is completed
at the time instance, T2, first data packet at the transmitted at the time
instance T3 is a common data packet which includes DRIS2 (406-2) and
DRIP2-1. Further, DRIS3 (406-3) is also scheduled for transmission in a similar
manner where the DRIS3 (406-3) is attached with the first data packet of
DRIP3 (DRIP3-1) to form the common data packet.
[00144] Fig. 4(d) depicts the manner in which transmission of DRIS is
scheduled in linear time mode based on a post-adjacent manner. As
described before, in the post-adjacent manner of transmission, the DRIS is
attached at the end of the last data packet of the corresponding set of DRIPs.
Hence, the DRIS1 (408-1) corresponding to the set of DRIPs (DRIP1) is
attached with the last data packet of DRIP1 (DRIP1-3). The transmission of
data packets is initiated at time instance T1 and the last data packet for
transmission is the common data packet transmitted before the completion of
transmission at time instance T2. Similarly, prior to completion of transmission
of DRIP2 at the time instance T4, last data packet includes he DRIS2 (408-2)
along with DRIP2-2.
[00145] Therefore, based on the above communication modes, the
DRIS scheduling module 122 may schedule the transmission of DRIS in
various different manners. Since the DRIS scheduling module 122 utilizes
randomizers for the purpose of determining various parameters of DRIS
transmission, the transmission of DRIS is randomized such that it provides
security to the communication of DRIS against undesired interference and
external attacks.
[00146] It has been described that the DRIS scheduling module 122
may schedule the transmission of DRIS through the same channel through
50
which the set of DRIPs are transmitted. However, in one implementation of
the present subject matter, the DRIS scheduling module 122 may schedule
the transmission of DRIS through a different channel other than the channel
through which set of DRIPs are transmitted.
[00147] While scheduling transmission of DRIS through a different
channel, the DRIS scheduling module 122 may utilize the above described
communication modes including, but not limited to, Random time slot mode,
Random Piggy Tailing mode, and Linear time mode.
[00148] Although the manner in which the scheduling of DRIS is
performed by the DRIS scheduling module 122 for transmission through
different channel may be similar to the manner in which the scheduling is
done for transmission through same channel, various implementations of
transmission in different communication modes have been explained in
reference with Fig. 5 to Fig. 7.
[00149] Referring to Fig. 5, the DRIS scheduling module 122 may
schedule the transmission of set of DRIPs through channel 1 while the DRIS
packets may be scheduled for transmission through a different channel, such
as channel 2. The communication mode depicted in the figure may be
Random time slot mode where the RTS parameter defines the transmission
of DRIS to be before the transmission of the corresponding set of DRIPs. It
would be appreciated that the RTS parameter may be determined by the
DRIS scheduling module 122 based on a randomizer. Since the details of the
RTS parameter selection have been discussed in detail with respect to
random time slot communication mode, the explanation and details have
been omitted here for the sake of brevity.
[00150] As depicted in the figure, data packets of DRIP1 are scheduled
for transmission from time instance T1. Since the DRIS corresponding to the
51
data packets of DRIP1, i.e., DRIS1 (502-1), is to be scheduled for transmission
before T1, the DRIS scheduling module 122 may schedule the transmission of
the DRIS1 (502-1) prior to the time instance T1. However, the transmission of
the DRIS1 (502-1) is scheduled through the channel 2, different from the
channel through which the data packets of DRIP1 are scheduled for
transmission.
[00151] Similarly, DRIS2 (502-2) may also be scheduled for transmission
through different channel, prior to transmission of data packets of DRIP2.
Hence, the DRIS scheduling module 122 may randomly select a time slot for
transmission of DRIS2 (502-2) between time instance T1 and T2 based on a
randomizer. In one implementation, the DRIS scheduling module 122 may
randomly determine to schedule the transmission of DRIS2 (502-2) after the
transmission of second data packet of DRIP2 but, through the different
channel, channel 2.
[00152] DRIS3 (502-3) may also be randomly scheduled for transmission
prior to transmission of DRIP3. During the transmission of DRIP2, between the
time instance T3 and T4, the DRIS scheduling module 122 may schedule the
transmission of DRIS3 (502-3). That is, after the transmission of first data
packet of DRIP2. Hence, the DRIS3 corresponding to DRIP3 may be
transmitted through a different channel 2 in a random time slot
communication mode.
[00153] The DRIS scheduling module 122 may schedule transmission of
DRIS through a different channel in random time slot mode in other manners
also, as defined by the RTS parameter. For example, the DRIS scheduling
module 122 may also schedule the transmission of DRIS either after the
transmission of corresponding set of DRIPs, or during the transmission of
corresponding set of DRIPs. The manner of such transmission would be
52
appreciated by those skilled in the art, based on the description of Fig. 2 and
therefore, such description has been omitted here for the sake of brevity.
[00154] Referring to Fig. 6, the DRIS scheduling module 122 may
schedule the transmission of set of DRIPs through channel 1 while the DRIS
packets may be scheduled for transmission through a different channel, such
as channel 2. The communication mode depicted in the figure may be
random piggy tailing where the piggy tailing parameter may define the
manner of DRIS transmission. In said depiction, the piggy tailing parameter
has been assumed to be: ‘piggy tailing – before’, which defines transmission
of DRIS to be in piggy tailing manner but, before the transmission of
corresponding set of DRIPs. It would be appreciated that the piggy tailing
parameter may be determined by the DRIS scheduling module 122 based on
a randomizer. Since the details of the piggy tailing parameter selection have
been discussed in detail with respect to random piggy tailing communication
mode, the explanation and details have been omitted here for the sake of
brevity.
[00155] As depicted in the figure, data packets of DRIP1 are scheduled
for transmission from time instance T1. Since the DRIS corresponding to the
data packets of DRIP1, i.e., DRIS1 (602-1), is to be scheduled for transmission
before T1, the DRIS scheduling module 122 may schedule the transmission of
the DRIS1 (602-1) prior to the time instance T1. However, the transmission of
the DRIS1 (602-1) is based on piggy tailing with other data packets, on
channel 2, different from the channel through which the data packets of
DRIP1 are scheduled for transmission.
[00156] Similarly, DRIS2 (602-2) may also be scheduled for transmission
through different channel, prior to transmission of data packets of DRIP2 and
piggy tailed with other data packets. The DRIS scheduling module 122 may
randomly select a time slot for piggy tailing and transmission of DRIS2 (602-2)
53
between time instance T1 and T2 based on a randomizer. In one
implementation, the DRIS scheduling module 122 may randomly determine to
piggy tail the DRIS2 (602-2) after the transmission of second data packet of
DRIP1 but, through the different channel, channel 2. In such a scenario, at the
determined time slot, the DRIS2 (602-2) may be piggy tailed along with other
data packets and transmitted through channel 2.
[00157] DRIS3 (602-3) may also be randomly scheduled for transmission
prior to transmission of DRIP3, while being piggy tailed with other data
packets. During the transmission of DRIP2, between the time instance T3 and
T4, the DRIS scheduling module 122 may piggy tail the DRIS3 (503-2) with
other data packets. That is, after the transmission of second data packet of
DRIP2. Hence, the DRIS3 (602-3) corresponding to DRIP3 may be transmitted
through a different channel 2 in a random piggy tailing communication mode.
[00158] The DRIS scheduling module 122 may piggy tail the DRIS with
other data packets and schedule its transmission through a different channel
in random piggy tailing mode in other manners also, as defined by the piggy
tailing parameter. For example, the DRIS scheduling module 122 may also
piggy tail the DRIS with data packets transmitted either after the transmission
of corresponding set of DRIPs, or during the transmission of corresponding
set of DRIPs. The DRIS may also be fragmented and piggy tailed with
multiple data packets. The manner of such transmission would be
appreciated by those skilled in the art, based on the description of Fig. 3 and
therefore, such description has been omitted here for the sake of brevity.
[00159] Referring to Fig. 7, the DRIS scheduling module 122 may
schedule the transmission of set of DRIPs through channel 1 while the DRIS
packets may be scheduled for transmission through a different channel, such
as channel 2. The communication mode depicted in the figure may be linear
time mode where the linear time parameter may define the manner of DRIS
54
transmission. In said depiction, the linear time parameter has been assumed
to be: ‘Transmission – after’, which defines transmission of DRIS to be done
right after the transmission of corresponding set of DRIPs. It would be
appreciated that the linear time parameter may be determined by the DRIS
scheduling module 122 based on a randomizer. Since the details of the linear
time parameter selection have been discussed in detail with respect to linear
time communication mode, the explanation and details have been omitted
here for the sake of brevity.
[00160] As depicted in the figure, data packets of DRIP1 are scheduled
for transmission from time instance T1 to time instance T2. Since the DRIS
corresponding to the data packets of DRIP1, i.e., DRIS1 (702-1), is to be
scheduled for transmission after T2, the DRIS scheduling module 122 may
schedule the transmission of the DRIS1 (702-1) after the time instance T1.
[00161] Similarly, DRIS2 (702-2) may also be scheduled for transmission
through different channel, after the transmission of data packets of DRIP2.
Hence, the DRIS scheduling module 122 may schedule transmission of
DRIS2 (702-2) right after time instance T4, i.e., after the complete
transmission of DRIP2. The DRIS scheduling module 122 may schedule
transmission of DRIS through a different channel in linear time mode in other
manners also, as defined by the linear time parameter. For example, the
DRIS scheduling module 122 may schedule the transmission of DRIS either
before the transmission of corresponding set of DRIPs, or pre-adjacent to the
transmission of corresponding set of DRIPs, or post-adjacent to the
transmission of corresponding set of DRIPs. The manner of such
transmission would be appreciated by those skilled in the art, based on the
description of Fig. 4 and therefore, such description here has been omitted
here for the sake of brevity.
55
[00162] Based on Fig. 4 to Fig. 7, different modes of transmitting DRIS
packets through two different channels have been described. However, in
another implementation, the transmission of DRIS packets through the
different channel may also be done in an accelerated mode. In said
implementation, the delivery of the DRIS packets is ensured along with the
corresponding DRIPs. This may allow for faster decoding of the
corresponding DRIPs based on the DRIS packets. In said implementation, the
DRIS scheduling module 122 may indicate that the DRIS packets are to be
communicated in an accelerated mode based on which these DRIS packets
may be utilized for decoding of corresponding DRIPs.
[00163] According to an implementation of the present subject matter,
the data transmitting system 102-1 may share the DRIS with a validated and
authenticated certified authority (CA) rather than directly with other
communication devices 104. The CA may either completely control the data
transfer between the communication devices, or partially control the data
transfer between the communication devices, or may merely overlook the
data transfer between the communication devices for enhanced secure
communication. The functionality of CA may either be implemented by a third
party or, may be included within one of the transmitting or receiving
communication device.
[00164] In one implementation of the present subject matter, the CA
may act as a monitoring agency to initiate flow of data packets between the
data transmitting system 102-1 and the data receiving system 102-2. In such
implementation the CA may determine whether the communicating systems
are authenticated and thereafter, the transmission of DRIPs and correspond
DRIS packets may be based on the above described modes utilizing either a
since channel or multiple channel. Once the authentication is complete, the
data transmitting system 102-1 and the data receiving system 102-2 may
56
directly share data, such as DRIPs and their corresponding DRIS with each
other.
[00165] For the purpose of secure transmission of data packets, in
another implementation of the present subject matter, the data transmitting
system 102-1 may transmit either the DRIS or the DRIPS to the data
receiving system 102-2. In such implementations, the CA may partially control
the data transfer between the communication devices. Similar to other
implementation, sharing of either the DRIS or the DRIPs through the CA may
allow limited share of the data with merely the intended and trusted recipients.
The CA may validate the authenticity of the recipients and may then share the
data with the recipients.
[00166] In another implementation of the present subject matter, the CA
may completely control the data transfer between the communicating devices,
such as the data transmitting system 102-1 and the data receiving system
102-2 to provided enhanced security.
[00167] The CA may define and generate DRIS based on which DRIPs
are to be generated by the data transmitting system 102-1. The CA may
communicate such DRIS to the data transmitting system 102-1 based on
which the data transmitting system 102-1 may then generate the
corresponding set of DRIPs and communicate to the data receiving system
102-2. The CA may also securely communicate the DRIS to the data
receiving system 102-2 so that the data receiving system 102-2 may decode
the received DRIPs. Hence, when the CA completely controls the data
exchange to provide enhanced security, the data transmitting system 102-1
may merely generate and communicate DRIPs to the data receiving system
102-2 and the CA may handle generation and communication of DRIS. Also,
as described earlier, in implementations of complete control of data transfer
through the CA, the data transmitting system 102-1 may share both, the DRIS
57
and the DRIPs with the CA for communicating with the data receiving system
102-2.
[00168] In the above described implementations of CA, the
communication of data packets between different entities may either occur
through same channel or through two different channels, depending upon the
implementation and intended security in data transfer. For instance, the data
transmitting system 102-1 may communicate the set of DRIPs on one
channel with the intended communication device 104, but may instead share
the DRIS corresponding to the set of DRIPs on another channel with the CA.
The scheduling of transmission of the DRIS packets with the CA may again
be based on communication modes and their corresponding manners, as
determined by the DRIS scheduling module 112. For example, the data
communication module 120-2 of the data transmitting system 102-1 may
communicate set of DRIPs with the data receiving system 102-2 on one
channel but, may share the DRIS corresponding to these set of DRIPs with
the CA through another channel. The CA, upon determination of authenticity
of the data receiving system 102-2, may transmit the received DRIS to the
data communication module 120-2 of the data receiving system 102-2.
Further, the CA may also choose to transmit the DRIS, the DRIPs or any
other data between the communication devices in the accelerated
communication mode. Since the scheduling of DRIS packets to be performed
by the DRIS scheduling module 122 may be performed in a similar manner as
performed in situations where DRIS is communicated through different
channel, the description of the various communication modes and manner of
data transmission has been omitted for the ease of explanation.
[00169] According to an implementation of the present subject matter,
the DRIS corresponding to a set of DRIPs may be transmitted by the data
communication module 120-1 of the data transmitting system 102-1. In said
58
implementation, the data communication module 120-1 may transmit the data
packets to either a single communication device, such as the communication
device 104-3, or may transmit the data packets to multiple communication
devices 104 at the same time.
[00170] In such scenarios, the data communication module 120-2 of the
data receiving system 102-2 may receive the data packets transmitted by the
data communication module 120-1 of the data transmitting system 102-1.
Further, the data communication module 120-2 may receive the data packets
in same configuration, as transmitted by the data communication module 120-
1, although along with a probable time delay. The manner in which the data
communication module 120-2 of the data receiving system 102-2 may receive
the set of DRIPs along with the scheduled DRIS packets has been depicted in
Fig. 2 to Fig. 7. Each figure represents the manner in which the set of DRIPs
and the corresponding DRIS may be transmitted and received. It would be
appreciated that the delay between transmission and reception of data
packets may vary between communication devices and may depend or
various factors, like type of channel utilized, available bandwidth, etc.
[00171] According to an implementation of the present subject matter,
the data receiving system 102-2 may also de-schedule the received DRIS for
the purpose of determining configuration of data packing utilized for the set of
DRIPs. To this end, the DRIS de-scheduling module 134 may identify the
DRIS packets received by the data communication module 120-2. Since the
DRIS packets are scheduled for transmission along with the set of DRIPs, the
DRIS de-scheduling module 134 may identify DRIS packets based on
different communication modes utilized for the purpose of DRIS transmission.
[00172] In one implementation, the DRIS de-scheduling module 134
may determine the communication mode to be from amongst, but not limited
to random time slot mode, random piggy tailing mode, and linear time mode.
59
In said implementation, upon determining the communication mode of DRIS
transmission, the DRIS de-scheduling module 134 may also determine the
manner of transmission adopted for the particular communication mode. For
instance, the DRIS may be transmitted in random time slot mode in
‘transmission – during’ manner. As would be appreciate that the manner of
transmission may have been defined by the RTS parameter. Similarly, the
DRIS packets may have also been transmitted based on Random Piggy
tailing communication mode by the data transmitting system 102-1. Further, in
such a situation where DRIS is transmitted based on Random Piggy tailing
communication mode, the transmission may be in a fragmented manner
where the DRIS are fragmented into smaller data packets and piggy tailed
along with data packets of set of DRIPs. Therefore, the DRIS de-scheduling
module 134 may determine the manner of DRIS transmission along with the
communication mode to identify DRIS packets from amongst the data packets
received by the data communication module 120-2.
[00173] The DRIS de-scheduling module 134, upon determining the
communication mode along with the manner of transmission, may deschedule
the DRIS packets from amongst the multiple data packets received.
Further, the data construction module 132 of the data receiving system 102-2
may analyze the de-scheduled DRIS packets to determine configuration of
data packing utilized for the construction of set of DRIPs.
[00174] It would be appreciated that the DRIS packets received, may
either include DRIS_VS packets or, may include DRIS_SD packets. Hence, in
situations where the de-scheduled DRIS packets are determined to be
DRIS_SD packets, the data construction module 132 may construct
configuration of data packing based on the system details. The data
construction module 132 may determine configuration that may include
details whether a 2-D or a 3-D matrix was utilized for interleaving, number of
60
columns utilized for the matrix, number of rows utilized for the matrix, number
of layers used for the matrix if a 3-D matrix was used, data filling format
adopted for the purpose of data packing for the matrix, data releasing format
adopted for the purpose of data packing for the matrix, data filling order used
for the matrix, and data releasing order used for the matrix. Further, based on
the configuration, the data construction module 132 may also de-interleave
the set of DRIPs to obtain original data.
[00175] Fig. 8 and Fig. 9 illustrate methods 800 and 900 of transmission
and reception of DRIS packets, respectively, in accordance with an
implementation of the present subject matter. The order in which the methods
800 and 900 are described is not intended to be construed as a limitation, and
any number of the described method blocks can be combined in any order to
implement the methods, or any alternative methods. Additionally, individual
blocks may be deleted from the methods without departing from the spirit and
scope of the subject matter described herein.
[00176] Referring to Fig. 8, at block 802, a Dynamic Random
Interleaving Setting (DRIS) packet is generated, corresponding to a set of
dynamic random interleaving packets (DRIPs). The set of DRIPs may include
a plurality of data packets generated based on a configuration of data
packing. The configuration of data packing may be defined by the DRIS
packets. In one implementation of the present subject matter, the
configuration of data packing may include selection of either a 2-D or a 3-D
matrix to be utilized for interleaving of original data, determination of number
of columns for the matrix to be utilized, determination of number of rows for
the matrix to be utilized, determination of number of layers for the matrix to be
utilized in case of a 3-D matrix selection, determination of data filling format to
be adapted for the purpose of data packing for the selected matrix,
determination of data releasing format to be adapted for the purpose of data
61
packing for the selected matrix, determination of data filling order into the
selected matrix, and determination of data releasing order from the selected
matrix.
[00177] At block 804, a communication channel and a communication
mode for transmission of the DRIS packet may be determined. In one
implementation, the communication mode may indicate a scheduling method
to be utilized for transmission of the DRIS packet along with the plurality of
data packets of the set of DRIPs. Further, the communication channel may
either be on same channel through which the plurality of data packets are
transmitted or, may be through a different channel, other than the one through
which the plurality of data packets are transmitted. Further, the
communication mode may include may include, but not limited to, Random
time slot mode, Random Piggy Tailing mode, and Linear time mode.
[00178] At block 806, a manner of transmission of the DRIS packet is
selected corresponding to the communication mode. In one implementation,
each communication mode includes a plurality of manner of transmission
which may define the scheduling method for transmission of DRIS packet. In
said implementation, the manner of transmission for the DRIS packet
corresponding to the set of DRIPs, in random time slot communication mode
may be identified based on a random time slot (RTS) parameter. The RTS
parameter may define the manner of transmission to be either before the
transmission of DRIPs, after the transmission of the set of DRIPs, or during
the transmission of the set of DRIPs.
[00179] Similarly, the manner of transmission for the DRIS packet
corresponding to the set of DRIPs, in random piggy tailing communication
mode may be identified based on a piggy tailing parameter. The piggy tailing
parameter may define the manner of transmission to be either before
62
transmission of the set of DRIPs, after transmission of the set of DRIPs,
during transmission of the set of DRIPs, or in a fragmented manner.
[00180] Further, the manner of transmission for the DRIS packet
corresponding to the set of DRIPs, in linear time communication mode may
be identified based on a linear time parameter. The linear time parameter
may define the manner of transmission to be either before the transmission of
the set of DRIPs, after transmission of the set of DRIPs, adjacently before
(pre-adjacent) the transmission of the set of DRIPs, or adjacently after (postadjacent)
the transmission of the set of DRIPs.
[00181] Hence, based on the determination of the manner of
transmission corresponding to the communication mode, a definitive
scheduling method may be determined for transmission of the DRIS packet.
[00182] At block 808, transmission of the DRIS packet through the
determined communication channel is scheduled based on the selected
manner. In one implementation, the selected manner may define the
scheduling method for transmission of the DRIS and therefore, based on the
scheduling method, the DRIS packet to be transmitted, may be scheduled for
transmission.
[00183] At block 810, the DRIS packet is transmitted through the
communication channel based on the scheduling. As described earlier, the
communication channel for transmission may either be the same as used for
transmission of the set of DRIPs or, may be different from the one used for
transmission of the set of DRIPs. In situations where the transmission is done
through the different channel, the transmission may either be done directly to
a receiving communication device 104 or, may be done to an authenticated
CA.
63
[00184] Referring to Fig. 9, at block 902 a plurality of data packets are
received from a communication device 104. The plurality of data packets may
include a set of DRIPs and a corresponding DRIS packet. The DRIS packet
may define configuration of data packing for the set of DRIPs.
[00185] At block 904, the DRIS packet is identified from amongst the
plurality of received plurality of data packets. The DRIS packet may be
identified based on communication modes and corresponding manner of
transmissions.
[00186] At block 906, the plurality of data packets may be de-scheduled
to determine a set of DRIPs corresponding to the identified DRIS packet. In
one implementation, the set of DRIPs are packed based on configuration of
data packing defined by the DRIS packet. Although it has been described that
a DRIS packet may be identified and de-scheduled from amongst the plurality
of data packets, it would be understood that in situations where multiple DRIS
packets are present in the plurality of data packets, all such DRIS packets
may be identified and de-scheduled.
[00187] At block 908, the set of DRIPs may be de-interleaved based on
the DRIS packet to generate original data. It would be appreciated that the
data packets included in the set of DRIPs are packed based on dynamic and
random configuration of data packing which utilizes method if interleaving.
Therefore, based on identification of the DRIS packet corresponding to the
set of DRIPs, the data packets of the set of DRIPs may be de-interleaved.
[00188] Although implementations for methods and systems for secure
communication of data has been described in a language specific to structural
features and/or methods, it is to be understood that the invention is not
necessarily limited to the specific features or methods described. Rather, the
64
specific features and methods are disclosed as exemplary implementations
for securely communicating data over communication networks.
65
I/We claim:
1. A method for secure transmission of data through a communication
network (106), the method comprising:
generating a Dynamic Random Interleaving Settings (DRIS)
packet corresponding to a set of Dynamic Random Interleaving
Packets (DRIPs), wherein the set of DRIPs include the data packed
based on a configuration of data packing, and wherein the DRIS
packet defines the configuration of data packing dynamically and
randomly;
determining a communication channel and a communication
mode for transmission of the DRIS packet, wherein the communication
mode is indicative of a scheduling method for transmission of the DRIS
packet along with the data;
selecting, corresponding to the communication mode, a manner
of transmission of the DRIS packet, wherein the manner of
transmission defines the scheduling method to be utilized for
transmission of the DRIS packet along with the data; and
scheduling transmission of the DRIS packet through the
determined communication channel based on the scheduling method.
2. The method as claimed in claim 1 further comprising transmitting the
DRIS packet through the communication channel based on the scheduling
method.
3. The method as claimed in claim 1, wherein the selecting is based on a
randomizer, wherein the randomizer is one of a pseudo-random binary
sequencer (PRBS), a true-random binary sequencer (TRBS), an ExOR
random binary sequencer, and a polynomial expression random sequencer.
66
4. The method as claimed in claim 1, wherein the communication mode is
one of Random time slot mode, Random Piggy Tailing mode, and Linear time
mode.
5. The method as claimed in claim 4, wherein the manner of transmission
for the Random Piggy Tailing mode is based on a piggy tailing parameter,
and wherein the piggy tailing parameter defines the manner of transmission
to be one of ‘Piggy Tailing-Before’, ‘Piggy Tailing-After’, ‘Piggy Tailing-
During’, and ‘Piggy Tailing-Fragmented’.
6. The method as claimed in claim 5, wherein the scheduling comprises
fragmenting the DRIS packet into smaller DRIS packets to generate
fragmented DRIS packets, and wherein the scheduling method defined by the
manner of transmission is based on the piggy tailing parameter-‘Piggy Tailing
– Fragmented’.
7. The method as claimed in claim1, wherein the determined
communication channel for transmission of DRIS is one of a channel utilized
for transmission of DRIPs and a channel other than the channel utilized for
the transmission of DRIPs.
8. The method as claimed in claim 1, the method further comprising,
transmitting the DRIS packet through the communication channel, to a
certified authority (CA), wherein the CA is an authenticated and trusted entity.
67
9. The method as claimed in claim 1, wherein the DRIS packet is one of
DRIS value setting (DRIS_VS) and DRIS system details (DRIS_SD), wherein
the DRIS_VS defines configuration of data packing utilized for the purpose
generation of the set of DRIPs, and wherein the DRIS_SD defines system
details for generation of configuration of data packing utilized for the purpose
generation of the set of DRIPs.
10. A method for secure reception of data through a communication
network (106), the method comprising:
receiving a plurality of data packets, as the data, from a
communication device (104);
identifying a Dynamic Random Interleaving Settings (DRIS)
packet from amongst the plurality of received data packets based on a
communication mode, wherein the DRIS packet defines configuration
of data packing of at least one data packet from amongst the plurality
of data packets; and
de-scheduling the plurality of data packets to determine a set of
Dynamic Random Interleaving Packets (DRIPs) corresponding to the
DRIS packet, wherein the set of DRIPs are packet based on the
configuration of data packing.
11. The method as claimed in claim 10 further comprising de-interleaving
the set of DRIPs based on the DRIS packet to generate original data.
12. The method as claimed in claim 10, wherein the communication mode
is one of Random time slot mode, Random Piggy Tailing mode, and Linear
time mode.
13. The method as claimed in claim 10 wherein the receiving the plurality
of data packets is from a certified authority (CA), wherein the CA is an
authenticated and trusted entity.
68
14. A data transmitting system (102-1) for secure transmission of data
through a communication network (106), the data transmitting system (102-1)
comprising:
a processor (114-1);
a DRIS generation module (118), coupled to the processor
(114-1), to generate a Dynamic Random Interleaving Settings (DRIS)
packet corresponding to a set of Dynamic Random Interleaving
Packets (DRIPs), wherein the set of DRIPs include data packed based
on a configuration of data packing, and wherein the DRIS packet
defines the configuration of data packing dynamically and randomly;
and
a DRIS scheduling module (122), coupled to the processor
(114-1), to:
determine a communication channel and a
communication mode for transmission of the DRIS packet,
wherein the communication mode is indicative of a scheduling
method to be utilized for transmission of the DRIS packet along
with the data;
select, corresponding to the communication mode, a
manner of transmission of the DRIS packet, wherein the
manner of transmission defines the scheduling method to be
utilized for transmission of the DRIS packet along with the data;
and
scheduling transmission of the DRIS packet through the
determined communication channel based on the scheduling
method.
15. The data transmitting system (102-1) as claimed in claim 14 further
comprising a data communication module (120-1) to transmit the DRIS
packet through the communication channel based on the scheduling method.
16. The data transmitting system (102-1) as claimed in claim 15, wherein
the data communication module (120-1) transmits the DRIS packet through
69
the communication channel, to a certified authority (CA), wherein the CA is an
authenticated and trusted entity.
17. The data transmitting system (102-1) as claimed in claim 14, wherein
the DRIS scheduling module (122) selects the manner of transmission of the
DRIS packet based on a randomizer, wherein the randomizer is one of a
pseudo-random binary sequencer (PRBS), a true-random binary sequencer
(TRBS), an ExOR random binary sequencer, and a polynomial expression
random sequencer.
18. The data transmitting system (102-1) as claimed in claim 14, wherein
the communication mode is one of Random time slot mode, Random Piggy
Tailing mode, and Linear time mode.
19. The data transmitting system (102-1) as claimed in claim 18, wherein
the DRIS scheduling module (122) selects the manner of transmission for the
random time slot mode based on a random time slot (RTS) parameter, and
wherein the RTS parameter defines the manner of transmission to be one of
‘transmission-before’, ‘transmission-after’, and ‘transmission-during’.
20. The data transmitting system (102-1) as claimed in claim 18, wherein
the DRIS scheduling module (122) selects the manner of transmission for the
linear time mode is based on a linear time parameter, and wherein the linear
time parameter defines the manner of transmission to be one of
‘Transmission-Before’, ‘Transmission-After’, ‘Transmission – Pre-adjacent’,
and ‘Transmission – Post-adjacent’.
21. A data receiving system (102-2) for secure reception of data through a
communication network (106), the data receiving system (102-2) comprising:
70
a processor (114-2);
a data communication module (120-2), coupled to the processor
(114-2), to receive a plurality of data packets, as the data, from a
communication device (104); and
a DRIS de-scheduling module (134), coupled to the processor
(114-2), to:
identify a Dynamic Random Interleaving Settings (DRIS)
packet from amongst the plurality of received data packets
based on a communication mode, wherein the DRIS packet
defines configuration of data packing of at least one data packet
from amongst the plurality of data packets; and
de-schedule the plurality of data packets to determine a
set of Dynamic Random Interleaving Packets (DRIPs)
corresponding to the DRIS packet, wherein the set of DRIPs are
packet based on the configuration of data packing.
22. The data receiving system (102-2) as claimed in claim 21 further
comprising a de-scheduling module 134 to de-interleave the set of DRIPs
based on the DRIS packet to generate original data.
23. The data receiving system (102-2) as claimed in claim 21, wherein the
data communication module (120-2) is further configured to receive the
plurality of data packets from a certified authority (CA), wherein the CA is an
authenticated and trusted entity.
24. A non-transitory computer readable medium having a set of computer
readable instructions that, when executed, cause a data transmitting system
to:
generate a Dynamic Random Interleaving Settings (DRIS)
packet corresponding to a set of Dynamic Random Interleaving
Packets (DRIPs), wherein the set of DRIPs include a plurality of data
71
packets packed based on a configuration of data packing, and wherein
the DRIS packet defines the configuration of data packing dynamically
and randomly;
determine a communication channel and a communication
mode for transmission of the DRIS packet, wherein the communication
mode is indicative of scheduling method to be utilized for transmission
of the DRIS packet along with the plurality of data packets;
select, corresponding to the communication mode, a manner of
transmission of the DRIS packet, wherein the manner of transmission
defines the scheduling method to be utilized for transmission of the
DRIS packet along with the plurality of data packets; and
schedule transmission of the DRIS packet through the
determined communication channel based on the scheduling method.
| Section | Controller | Decision Date |
|---|---|---|
| # | Name | Date |
|---|---|---|
| 1 | 2501-DEL-2013-RELEVANT DOCUMENTS [09-09-2023(online)].pdf | 2023-09-09 |
| 1 | SAMSUNG INDIA ELECTRONICS PVT LTD_GPOA.pdf | 2013-09-03 |
| 2 | 2501-DEL-2013-IntimationOfGrant16-03-2022.pdf | 2022-03-16 |
| 2 | PD010000IN-SC_CS_Final.pdf | 2013-09-03 |
| 3 | FORM 5.pdf | 2013-09-03 |
| 3 | 2501-DEL-2013-PatentCertificate16-03-2022.pdf | 2022-03-16 |
| 4 | FORM 3.pdf | 2013-09-03 |
| 4 | 2501-DEL-2013-Written submissions and relevant documents [22-10-2021(online)].pdf | 2021-10-22 |
| 5 | Figures IN.pdf | 2013-09-03 |
| 5 | 2501-DEL-2013-US(14)-HearingNotice-(HearingDate-18-10-2021).pdf | 2021-10-17 |
| 6 | 2501-del-2013-Form-1-(25-09-2013).pdf | 2013-09-25 |
| 6 | 2501-DEL-2013-Correspondence to notify the Controller [14-10-2021(online)].pdf | 2021-10-14 |
| 7 | 2501-DEL-2013-FORM-26 [14-10-2021(online)].pdf | 2021-10-14 |
| 7 | 2501-del-2013-Correspondence Others-(25-09-2013).pdf | 2013-09-25 |
| 8 | 2501-DEL-2013-RELEVANT DOCUMENTS [08-05-2018(online)].pdf | 2018-05-08 |
| 8 | 2501-DEL-2013-Correspondence-101019.pdf | 2019-10-14 |
| 9 | 2501-DEL-2013-Changing Name-Nationality-Address For Service [08-05-2018(online)].pdf | 2018-05-08 |
| 9 | 2501-DEL-2013-OTHERS-101019.pdf | 2019-10-14 |
| 10 | 2501-DEL-2013-8(i)-Substitution-Change Of Applicant - Form 6 [19-09-2019(online)].pdf | 2019-09-19 |
| 10 | 2501-DEL-2013-AMENDED DOCUMENTS [08-05-2018(online)].pdf | 2018-05-08 |
| 11 | 2501-DEL-2013-ASSIGNMENT DOCUMENTS [19-09-2019(online)].pdf | 2019-09-19 |
| 11 | 2501-DEL-2013-FER.pdf | 2018-08-29 |
| 12 | 2501-DEL-2013-OTHERS [21-12-2018(online)].pdf | 2018-12-21 |
| 12 | 2501-DEL-2013-PA [19-09-2019(online)].pdf | 2019-09-19 |
| 13 | 2501-DEL-2013-CLAIMS [21-12-2018(online)].pdf | 2018-12-21 |
| 13 | 2501-DEL-2013-FER_SER_REPLY [21-12-2018(online)].pdf | 2018-12-21 |
| 14 | 2501-DEL-2013-DRAWING [21-12-2018(online)].pdf | 2018-12-21 |
| 15 | 2501-DEL-2013-CLAIMS [21-12-2018(online)].pdf | 2018-12-21 |
| 15 | 2501-DEL-2013-FER_SER_REPLY [21-12-2018(online)].pdf | 2018-12-21 |
| 16 | 2501-DEL-2013-OTHERS [21-12-2018(online)].pdf | 2018-12-21 |
| 16 | 2501-DEL-2013-PA [19-09-2019(online)].pdf | 2019-09-19 |
| 17 | 2501-DEL-2013-FER.pdf | 2018-08-29 |
| 17 | 2501-DEL-2013-ASSIGNMENT DOCUMENTS [19-09-2019(online)].pdf | 2019-09-19 |
| 18 | 2501-DEL-2013-AMENDED DOCUMENTS [08-05-2018(online)].pdf | 2018-05-08 |
| 18 | 2501-DEL-2013-8(i)-Substitution-Change Of Applicant - Form 6 [19-09-2019(online)].pdf | 2019-09-19 |
| 19 | 2501-DEL-2013-Changing Name-Nationality-Address For Service [08-05-2018(online)].pdf | 2018-05-08 |
| 19 | 2501-DEL-2013-OTHERS-101019.pdf | 2019-10-14 |
| 20 | 2501-DEL-2013-Correspondence-101019.pdf | 2019-10-14 |
| 20 | 2501-DEL-2013-RELEVANT DOCUMENTS [08-05-2018(online)].pdf | 2018-05-08 |
| 21 | 2501-del-2013-Correspondence Others-(25-09-2013).pdf | 2013-09-25 |
| 21 | 2501-DEL-2013-FORM-26 [14-10-2021(online)].pdf | 2021-10-14 |
| 22 | 2501-DEL-2013-Correspondence to notify the Controller [14-10-2021(online)].pdf | 2021-10-14 |
| 22 | 2501-del-2013-Form-1-(25-09-2013).pdf | 2013-09-25 |
| 23 | 2501-DEL-2013-US(14)-HearingNotice-(HearingDate-18-10-2021).pdf | 2021-10-17 |
| 23 | Figures IN.pdf | 2013-09-03 |
| 24 | 2501-DEL-2013-Written submissions and relevant documents [22-10-2021(online)].pdf | 2021-10-22 |
| 24 | FORM 3.pdf | 2013-09-03 |
| 25 | FORM 5.pdf | 2013-09-03 |
| 25 | 2501-DEL-2013-PatentCertificate16-03-2022.pdf | 2022-03-16 |
| 26 | PD010000IN-SC_CS_Final.pdf | 2013-09-03 |
| 26 | 2501-DEL-2013-IntimationOfGrant16-03-2022.pdf | 2022-03-16 |
| 27 | SAMSUNG INDIA ELECTRONICS PVT LTD_GPOA.pdf | 2013-09-03 |
| 27 | 2501-DEL-2013-RELEVANT DOCUMENTS [09-09-2023(online)].pdf | 2023-09-09 |
| 1 | searchstrategy_15-01-2018.pdf |