You are on page 1of 5

2013 Fourth World Congress on Software Engineering

RNP: A Remote-desktop Based NetMagic Remote Debugging Platform

Tao Zhao Jianbiao Mao


School of Computer School of Computer
National University of Defense Technology National University of Defense Technology
Changsha, Hunan, China Changsha, Hunan, China
e-mail: zztt0311@126.com e-mail: mjn198812@sina.com

Jinfeng Huang
School of Computer
National University of Defense Technology
Changsha, Hunan, China
e-mail: hjf@nudt.edu.cn

Abstract—The paper presents a remote-desktop based functions, such as implementing an encryption algorithm, a
NetMagic remote debugging RNP (Remote-desktop based new type of look-up table algorithm and so on.
NetMagic Remote Debugging Platform) model for the situation NetMagic is a kind of programmable hardware platform
that hardware programming experiment is not often for the network innovation experiment [4]. Researchers can
conducted in the network innovation experiment and teaching. control the processing behavior through FPGA programming
It allows researchers to operate NetMagic remotely, which is a of the platform and realize various functions. Different from
kind of open source hardware network study experiment NetFPGA platform that is similar to the network interface
platform, using the remote-desktop key technology. card [5], NetMagic is independent equipment which contains
Additionally, we preliminarily implemented the remote
eight Ethernet interfaces and is similar to the Ethernet
debugging platform based on this model and verified the key
switch. Because NetMagic is based on UM (User Module)
technology of the remote-desktop connection. The work of this
paper has an important guiding significance for the network hardware programming which is simple and flexible, it can
innovation experiment and teaching. well support the network technology research. NetMagic-
based network results have been applied in the papers in
Keywords- NetMagic; remote desktop; remote debugging; SIGCOMM Demo and CoNEXT climax meeting [6] [7]. We
RNP have established network experimental environment based
on the NetMagic platform in our campus network. In order to
I. INTRODUCTION support more researchers to conduct network experiments in
our experiment environment, we think it is very important to
Now the research of the future Internet has been carried conduct the NetMagic remote debugging operations for
on, such as GENI [1], FIRE [2] and so on. However, the users. There are three main reasons to explain:
traditional commercial network equipment usually adopts (1) Researchers can conduct experiments at any time
enclosed design, which brings a lot of obstacles to the and any place;
innovation of the network technology. In order to study the (2) Researchers can get the signal waveforms from the
new Internet technology, the first consideration is to need the NetMagic and debug their programs to ensure the
network switching equipment that support new protocols, correctness of the hardware logic;
allow users to define functions of switching equipment (3) Researchers can share and make full use of the
remotely. Only when the network technology researchers hardware experiment resources.
have the programmable network environment, they can Due to many advantages of remote experiment, the
really carry on the technical innovation and development, remote debugging technologies have been studied.
test and verify new functions. Nowadays, the research about Especially, remote debugging of FPGA developed very fast
the remote software and hardware experiment has been a in recent years. Such as FPGA remote experiment service
hotspot. At present in the network innovation experiment and based on WSRF [8], FPGA remote laboratory based on
teaching, OpenFlow [3], as a representative of the software LabView program development environment [9], FPGA
definition network, promotes the development of the Internet remote laboratory based on FSC [10] and so on. Most of
innovation platform. Users can add rules to change functions these remote experiment platforms use Web technology, are
of the OpenFlow switch and change the rules in any place based on graphical software development environment to
through the network. It provides a flexible and convenient develop the remote control software and support users to
experiment environment. But due to the shortage of software conduct the remote experiment. However, these remote
definition, it doesn't have some hardware programmable debugging technologies lack of multi-user scheduling

978-1-4799-2883-5/13 $31.00 © 2013 IEEE 261


DOI 10.1109/WCSE.2013.48
management, user experience and do not support the network 6) Support specifications of users’ programs
hardware programming, which are mostly used for teaching. The platform can ensure users’ program legal, which
Therefore, we studied the NetMagic remote debugging means users’ logics can’t be used to do bad things. Once
technology and preliminarily implemented the NetMagic hardware logics contain fallacious functions, it may affect
remote debugging platform based on the remote desktop. It the whole network and lead to various network problems.
is said that this is the first time to put forward the NetMagic
remote debugging platform. The work of this paper has these III. RNP MODEL
following main innovative points:
(1) We presented the remote-desktop based NetMagic A. Architecture of Model
remote debugging platform model—RNP. The model According to the design goals, we propose a remote-
supports multi-user scheduling management, improves the desktop based NetMagic remote debugging platform
user experience and is suitable for the network innovation model—RNP model. Figure 1 describes the logical view of
experiment and teaching. the RNP model. The RNP model has five parts, including the
(2) We preliminarily implemented the NetMagic application, user manager, UM manager, resource manager
remote debugging platform based on the RNP model and and NetMagic resource. These five components can also be
verified the implementation of remote desktop key abstracted into three layers: user application layer, control
technology. layer and infrastructure layer.
(3) The remote platform uses the remote desktop on the 1) User application layer:
Windows operating system to be established very easily. Application: Users firstly send the request to the control
Section 2 in the paper describes the design goals of the layer to use NetMagic. After approval, users can control
NetMagic remote experimental platform. Section 3 presents NetMagic through the remote desktop interface.
the architecture and workflow of the RNP model in detail. 2) Control layer:
We show the result of the preliminary realization based on User manager: It receives users’ requests. And according
the RNP model in Section 4. In Section 5, we plan the next to the feedback information from resource manager, user
step to implement the rest work. Section 6 introduces the manager allocate one or more NetMagic resources which
correlational research and Section 7 summarizes our work in users request to the users. User manager will inform users of
the paper. being able to use resources they wanted. After receiving the
permission from user manager, users can control their
II. DESIGN GOALS NetMagic to conduct experiments. And then user manager
In order to design and implement an effective and will send users’ operation request to UM manager to deal
practical remote debugging platform, NetMagic remote with.
debugging platform must meet the following design goals: UM manager: It is responsible for the users’ concrete
1) Support users to remotely compile and simulate operations, which include: programming, compiling, loading,
programs. debugging and so on. And at the end of the users’ operations
Although users may have not professional development UM manager manages the users’ records to ensure safe.
environment, they can use the tools on our remote platform Resource manager: It is responsible for managing
to remotely compile and simulate hardware programs. NetMagic resources. Resource manager records the
2) Make hardware development easier information about NetMagic (such as the number of being
When developing hardware in NetMagic, users only used, the number of being idle, the number of being
implement the hardware logic in UM and do not care abnormal and so on) and send these resource information to
network interface to send and receive. Besides, this platform user manager.
provides some simple and practical NetMagic hardware
reference model for users to refer to and use, which can
largely reduce the lifetime and difficulty of development.
3) Support users to remotely debug hardware logic
Users can use tools on a remote server to observe and
analysis the waveforms to find the errors of the logics, which
can ensure logic correct.
4) Isolate users’ traffic
The experiment traffic can’t affect normal network traffic
in the campus network. Therefore, we isolate the platform in
the local network environment to make experiment traffic
isolated.
5) Support multi-user management
According to the current situation of network and
hardware resources, this platform can schedule users to use
and ensure operations safe. For example, the platform can
ensure that users’ important information are safe, which are Figure 1. The logical view of the RNP model
users’ operation records, programs and so on.

262
3) Infrastructure layer: C. Key Technology
NetMagic resource: NetMagic resource provides Our remote debugging platform currently uses remote
NetMagic platforms. NetMagic platforms can be deployed in desktop key technology which Windows operation system
the remote laboratory and can be also deployed in the real provides. Remote desktop connection is developed from
Internet. TELNET, which is a graphical TELNET. When a host opens
B. Workflow of Model the remote desktop connection, we can control a host at the
other end of the network and do real-time operations through
This platform model is primarily aimed at network the remote desktop. We can install software and run
technology researchers at school. As shown in Figure 2, a programs on the remote host. All remote operations are like
remote server of the remote platform is deployed in a school direct operations on the local host [11]. Using remote
laboratory which is managed by a specialist. NetMagic desktop connection needs users to configure some
platforms can be centrally deployed in a laboratory, can be parameters. Users must input the IP address, account and
also placed in a real network. Researchers can use their own password of the remote host, and users can change some
computers to connect the remote server through the Internet settings to enhance the user experience. Users can also
at any time and any place. The control management software modify the port number of the remote desktop according to
on the remote server schedules users to use NetMagic their needs. In this way, users can remotely control the hosts
according to the usage information of hardware resources. they want.
Here is the detailed workflow of this platform model: Based on the remote desktop key technology, researchers
(1) Users use their computers connected to the Internet to can control the hosts in a remote laboratory to compile,
send the request information to a remote server. The request simulate, load and debug hardware programs and remotely
information includes the time, the number of NetMagic they conduct related network innovation experiments.
want and so on;
(2) After receiving the request information, user manager IV. PRELIMINARY IMPLEMENTATION OF RNP MODEL
on a remote server sends a check request to resource
manager. And then resource manager will return resource A. Results of Preliminary Implementation
information to user manager. User manager decides whether
According to our proposed RNP model, we made a
to approve the users’ request based on the current resource
preliminary implementation of the model. The current
usage information.
preliminary remote debugging platform adopts a single-user
(3) If user manager approves the users’ requests, it
and exclusive-used mode. The mode means that a researcher
returns approval information to the users. After receiving the
is only allocated one remote server, or multiple researchers
information, users can use remote desktop interface to send
share usage time of a remote server. We place all of remote
operation information. After receiving operation information,
servers in a lab, each of which is connected to a NetMagic.
user manager sends the information to UM manager to deal
We install hardware development tools on each remote
with. UM manager manages the users’ various remote
server, such as Quartus II software, Modelsim simulation
operations and establishes the connection to NetMagic.
software and so on. Researchers can control remote servers
However, if the remote server rejects the users’ requests, the
in the remote laboratory to compile, simulate, load and
users can only wait or cancel the request.
debug hardware programs and remotely conduct related
(4) Users can use all kinds of simulation and compilation
network innovation experiments.
software on the remote server to implement their own
According to the operation process of preliminary remote
experiments.
debugging platform, we use this platform to carry on the
NetMagic remote development—StreamGate. The main
functions of StreamGate are to monitor packets in a network
and forward the packets out according to the strategy in
RAM table.
Figure 3 shows the network topology of this experiment.
We firstly entered the IP address, account and password of
the remote server to control the remote server through
remote desktop interface. Then we used Quartus II software
and Modelsim simulation tools on the remote server to
develop our UM logic which is StreamGate and loaded the
compiled UM logic into a NetMagic through a JTAG
interface. Finally we observed the waveforms by using the
SignalTap tool of Quartus II software to debug our program.
Figure 4(a) is a compiling screenshot of this remote platform.
And Figure 4(b) shows our remote debugging screenshot.
Through using the platform, we successfully implemented
Figure 2. The deployment of the RNP model the remote development of StreamGate hardware.

263
Figure 5. The bandwidth information of the network interface when using
the remote desktop
Figure 3. The network topology of this experiment

In this experiment, we also observed some remote V. FUTURE WORK


desktop performance information. We used the ping Recently, we have preliminarily implemented the RNP
command to get the delay information between the user host model, but there are these following key problems to be
and the remote server: round trip time is about 18 ms. solved in the next step.
Besides, as shown in Figure 5, we also used the Windows 1) Pass through firewalls
task manager to detect the bandwidth information of the At present our platform in the campus network is used
network interface when using the remote desktop. By well, but there are some problems when across a wide area
observing these information, we found that a remote desktop network. For example, we want to control a remote host in
connection to a remote server can be made quickly, and only the Hong Kong Polytechnic University using the remote
when compiling programs, network utilization rate is very desktop connection, but we can’t connect the remote one
high. through a normal configuration. This is mainly because
B. User Experience routers in WANs filter out the remote desktop port (the
default port is 3389). Therefore, we consider developing a
At present, we have implemented three design goals: kind of software which can detect the port number that all
supporting users to remotely compile programs, minimizing routers allow very fast in the next step of work. And then we
difficulties of the hardware development and supporting will change the remote desktop port number to implement
users to remotely debug programs. At the same time, though the remote desktop connection across WANs.
using the platform for many times, we find that the 2) Multi-user management
preliminary implementation also has the following In order to solve the problem that the current platform
advantages: does not support multiple users, we thought about remotely
1) Set up easily: Because this is a remote desktop controlling multiple systems in a virtual machine on a remote
technology of Windows, setting it up is very easy. server by remote desktop control method, which is namely to
2) Real-time and convenient: Due to the advantages of install multiple operating systems in a virtual machine on a
remote desktop, this platform has the advantages of real-time remote server, and each operating system is allocated a USB
operation, convenience and quickness. interface to connect a NetMagic. Therefore, each user can
3) Any time and any place: Users can use this platform remotely control a virtual machine system respectively to
through a network at any time and any place. achieve multi-user operating at the same time. Given the idea,
Though having used this platform for many times, we we have made some experiments and made a good progress.
also find that remote operations are always fluency and are We will continue the research and development in the next
not fluency occasionally because of networks. In general, step. Besides, we will consider implementing multi-user
this remote platform enables users to feel like operating the scheduling strategy, ensuring the safety of operations and so
local host. Therefore, this platform can be well applied to on.
network innovation experiment and teaching. Now this 3) Specification of users’ programs
platform model has not been complemented completely, we Now this platform supports NetMagic to be deployed in a
will solve and implement the rest in the next step. network, so we need to consider how to ensure good
specifications of users’ logics, which namely must
standardize users’ hardware logics. Such as do not send DOS
attacking packets, do not forge source IP address and so on.
In a word, do not let users use this platform to do bad things.
Because once the user hardware logic contains malicious
functions, it may affect the entire network and cause all
(a) (b)
kinds of network problems. As a result, we will develop
good specifications of users’ programs in the next step, such
Figure 4. Two screenshot of this remote platform: (a) this is a compiling
screenshot; (b) this is a remote debugging screenshot.
as credit score mechanism, punishment mechanism and so on.

264
VI. CORRELATIONAL RESEARCH based on the RNP model and verified the implementation of
Recently, the concept of the remote laboratory has been remote desktop technology. Users can compile, simulate,
studied. Especially, the remote debugging of FPGA load and debug programs at any time and any place.
developed very fast in recent years. NetMagic is a programmable hardware network experiment
FPGA remote experiment service based on WSRF [8] platform. Users can define the hardware logic by themselves
uses the Web technology. Users can use their browsers to and implement your own functions. This platform is very
request experiment services and Web servers receive the meaningful with its remote-control, hardware programmable
request information to open up corresponding FPGA and real-time operational characteristics in the field of
experiment services. The service based on the WSRF network innovation experiment and teaching.
protocol can maintain, access and manage the states between Currently this platform only supports a single-user mode,
clients and servers. The service contains configuration and so we will study the unimplemented design goals and
verification service. However, it does not support remote improve it in the next step. Finally we will implement the
compiling and debugging. The service does not mind multi- design goals.
user scheduling management.
FPGA remote laboratory based on LabView software ACKNOWLEDGMENT
development environment [9] supports remote multi-user Thank Li Tao, Sun Zhigang, Zhang Yanlong and Cao
time-sharing operation for hardware experiments. Users can Chengzhou for their guidance to this paper.
use Web browsers to conduct FPGA remote experiments.
Besides, the system adds remote desktop to remotely provide REFERENCES
many kinds of software tools in remote servers. However, [1] Elliott. GENI: Opening up new classes of experiments in global
the system doesn’t support multi-user remote compiling networking. IEEE Internet Computing, 2010, 14(1):39-42.
based on the remote desktop technology and doesn’t present [2] Gavras A, Karila A, Fdida S, May M, Potts M. Future Internet
the isolation problems about experiment traffic. research and experimentation: The FIRE initiative. ACMSIGCOMM
FPGA remote laboratory based on FSC [10] adds FPGA Computer Communication Review, 2007,37(3):89í92.
session control software in RBoot to allow for easier remote [3] Mckeown N, Anderson T, Balakrishnan H, Parulkar G, Peterson L,
access to the FPGA boards. Users can power on and off a Rexford J, Shenker S, Turner J. OpenFlow: Enabling innovationin
board, reconfigure and debug, and capture essential I/O (such campus networks. ACM SIGCOMM Computer Communication
Review, 2008,38(2):69í74.
as a serial console and possibly some status LEDs).
[4] http://www.Netmagic.org.
However, the most important shortage is the lack of visual
[5] Glen Gibb, and John W. Lockwood. NetFPGA—An Open Platform
feedback while performing the labs. The other factors that for Teaching How to Build Gigabit-Rate Network Switches and
discouraged the users are slow Internet connection at their Routers. IEEE Transactions on Education. 2008.
end, not having enough “hands on” experience with FPGAs, [6] Taoli, Zhigang Sun, Chunbo Jia, Qi Su, and Myungjin Lee. Using
“buggy” session software, and sometimes the congestion of NetMagic to Observe Fine-Grained Per-Flow Latency
resources. Measurements//Proceedings of the ACM SIGCOMM 2011, Toronto,
Although FPGA remote experiment laboratories studied Canada, August, 2011:466-467.
can support some basic functions, such as reconfiguration, [7] Edmond W. W. Chan, Ang Chen, and Xiapu Luo, et al. TRIO:
compilation and so on, these remote labs lack of multi-user Measuring Asymmetric Capacity with Three Minimum Round-trip
Times//ACM CoNEXT 2011, December 6–9 2011, Tokyo, Japan.
scheduling management, user experience and do not support
[8] LI Tian-shun, XIAO Tie-jun. FPGA Remote Experiment Service
the network hardware programming, which are mostly used Based on WSRF. Computer Engineering, 2011, 37(2).
for teaching and experiments. The most important problem is [9] Miloš DRUTAROVSKÝ, Ján ŠALIGA, Ingrid HRONCOVÁ,
that these remote platforms don’t involve network hardware Hardware infrastrure of remote laboratory for experimental testing of
programming. Therefore, the implementation and use of the FPGA based complex reconfigurable systems. Department of
RNP model are very meaningful. Electronics and Multimedia Communications, Technical University
of Košice, 2009, 9(1):44-50.
VII. CONCLUSION [10] Yamuna Rajasekhar, William V. Kritikos, Andrew G. Schmidt, and
Ron Sass, Teaching FPGA system design via a remote laboratory
This paper proposes a remote-desktop based NetMagic facility. Reconfigurable Computing Systems Lab, University of North
remote debugging platform model— RNP. We preliminarily Carolina at Charlotte, 9201 University City Blvd, 2008, 687-690.
implemented the NetMagic remote debugging platform [11] http://en.wikipedia.org/wiki/Remote_Desktop_Protocol.

265

You might also like