the peak heap memory consumption of our testing ap-
plication. The OIBE scheme uses less heap memory
Table 4: Memory usage.
Scheme Memory usage client Memory usage server
SK 3148 KB 3296 KB
OIBE 3160 KB 22752 KB
RSA 3344 KB 3332 KB
during the encryption than SK, but the memory usage
of an actual application is comparable to that of SK.
This is because OIBE has to store more cryptographic
parameters for its operation, so the initialization of
these parameters consumes additional memory. In ad-
dition, the memory usage of the server for the OIBE
scheme is much higher than that of the SK scheme.
Finally, the OIBE scheme at server requires around
7 seconds to perform the initialization of the system
before clients can contact it, while the SK initializa-
tion is much faster. So, in applications where speed
is critical, the SK scheme seems more suitable for an
ID-based version of TLS, while in applications where
lower heap memory usage can make a difference, the
OIBE scheme might offer a viable alternative.
5.4 Results on CoC
In order to investigate the integration of above mod-
ified TLS, we need SDN supporting switches and
controller. The OpenVSwitch (OVS) and Ryu con-
troller are chosen to run on an SDN emulator
Mininet (Mininet, 2014). OVS is written in C, while
Ryu is mainly written in Python. Rather than follow-
ing direct integration of the secure channel in OVS
and Ryu, we opted for a solution that allows using
them more like “black-boxes”, with minimal or no
modifications to their pre-existing functionality. We
call them “crypto-proxies”. These proxies handle all
the tasks detailed above: obtaining the private key,
establishing a TLS connection and then handling the
encryption and decryption of messages accordingly.
On the CoC platform, it is easy to realize these
proxies in the network interface (NI) of the IP core.
Moreover, there are several advantages of the proxy
approach as follows:
• Our solution is independent of the chosen OF
switch or controller
• New security solution is easy to adopt as simple
as replacing the current proxy with a new one
• This approach bypasses the communication chan-
nel originally used between the switch and the
controller (TCP), which means that the data can
now be transferred over UDP or by any other
means, eventually a new protocol
We claim that there is no security compromise
while using proxies. The message generated at IP
core is encrypted and decrypted in its own NI and to
the best of our knowledge, there is no existing breach
in this situation. Using the setup described above, we
measured the flow establishment time (defined below)
for the default insecure version of OF as a baseline.
We then measured the secure channel setup and flow
establishment time for the OF secured with the ID-
TLS proxies.
In the TLS case, secure channel setup refers to
the execution time of the TLS handshake (for one
switch). To measure the flow establishment time, we
used the pingall command, which makes each host
ping all the other hosts in the network. In a fresh run
of the network emulation, the first time pingall is
executed, the switches have to contact the controller
to create their flow tables. For all subsequent exe-
cutions, the relevant flow entries are already inside
the switch’s flow tables and no further communica-
tion with the controller is required. We define the flow
establishment time as the average execution time of
the first pingall command minus the average execu-
tion time of subsequent pingall commands (which is
35.51ms in our test setup). Our results are displayed
in Figure 4 below:
The Sakai-based variant of TLS clocks in at about
100ms. The OIBE version of TLS is about 6 times
slower. It is important to note that in different scenar-
ios, the TLS cost will remain constant irregardless of
the number of switches. However, we calculated that
the average AES-GCM encryption-decryption times
in our testing environment is 0.0045ms (Averaged
over 1000 executions on actual OF messages, Stan-
dard deviation: 0.001ms).
6 CONCLUSION
This paper demonstrated that ID-TLS can be em-
ployed to secure the SDN communication on CoC.
We analyzed the performance of ID-TLS with tra-
ditional PKI based version of TLS in the view of
computation and storage efficiency. In particular, our
basis for comparison is to analyze the performance
of traditional protocols and their TLS versions. The
SK and RSA protocols have comparable performance
while OIBE is significantly slow. However, the OIBE
protocol while slower during the encryption and de-
cryption, has significantly lower heap memory con-
sumption during the encryption. In a client applica-
tion where speed is critical, the SK scheme seems
more suitable while in applications where lower heap
memory usage can make a difference, the OIBE
ICISSP 2019 - 5th International Conference on Information Systems Security and Privacy
52