Intern Report Final PDF
Intern Report Final PDF
Tribhuwan University
Institute of Science and Technology
An Internship Report
On
“System Support Admin”
At
WINepal Pvt. Ltd.
Submitted to
Department of Computer Science and Information Technology
Academia International College
Submitted by
Deepak Lal Karna (5578/071)
March, 2019
Mentor’s Recommendation
ii
Supervisor’s Recommendation
iii
Certificate of Approval
iv
Acknowledgement
This internship report has been prepared as a partial fulfillment for the degree of
Bachelor of Science in Computer Science and Information Technology (BSc CSIT) for
department of Computer Science, Academia International College, and Tribhuvan University.
As conceptual knowledge alone is not enough for the successful practice in Information
technology, it is essential for student to gain familiarity with the situation and generate more
knowledge through real world projects.
I would like to express my profound gratitude and sincere thanks to Supervisor Er.
Ganesh Ram Suwal and coordinator Er. Saroj Ghimire for his constant suggestion,
guidance, constructive comments and friendly discussion. His painstaking encouragements
boosted my morale for the completion of this internship.
I would like to express my sincere gratitude to WINepal Pvt. Ltd., gate no. 3,
baluwatar, mentor Mr. Samir Singh Rathour, Senior Network and System Engineer and
mentor Mr. Pratik Adhikari, Junior Network and System Engineer for their continuous
guidance, support, feedback and supervision.
Lastly, I would like to express my thanks and appreciation to my colleagues and seniors
who have directly and indirectly helped me throughout the intern.
Sincerely,
Deepak Lal Karna
v
Abstract
This report on “System Support Admin” overviews an internship at WINepal Pvt. Ltd.
I worked in network and system department. I worked there as a system support admin who
administers the system. The company provides media service like Live TV Streaming through
web and an app. App have channels, those channels are setup in the system architecture
containing antenna that catches the satellite signal, tuner that tunes the channels frequency,
encoder that is used to create a file called stream, media server to store them and web server.
My first and foremost duty was to tune, encode and maintain the channels running in the app.
Monitoring those channels for any disruption and solve the issues was also my duty including
the traffic monitoring of users and maintain their login to app via OTP generation which
sometime gets disrupted and OTP is not generated. Working in the company, I’ve learned
about the media service and the use of IT infrastructure to maintain the media service. I’ve
learned about the server environment for Live Streaming contents and ways of configuration
of channels and its overall management. I am now able to manage and configure those channels
and maintain them as per the need.
vi
List of Figures
Figure 1: Organizational Hierarchy ...........................................................................................3
Figure 2: IPTV Services.............................................................................................................8
Figure 3: System Architecture .................................................................................................13
Figure 4: Transcoding Process of FFmpeg ..............................................................................16
Figure 5: SSH Tunnel ..............................................................................................................21
vii
List of Tables
Table 1: Internship Duration Details..........................................................................................3
Table 2 : Channel information from satellite Thaicom 5 .........................................................19
viii
List of Abbreviation
BSc CSIT : Bachelor of Science in Computer Science and Information Technology
FTP : File Transfer Protocol
ID : Identity
IPTV : Internet Protocol Television
IRD : Integrated Receiver/Decoder
IT : Information Technology
LAN : Local Area Network
Ltd. : Limited
MPEG-4 : Moving Picture Experts Group-4
OTP : One Time Password
OTT : Over-the-top
PPA : Personal Package Archive
Pvt. : Private
SR : Symbol Rate
SSH : Secured Shell
Sysadmin : System Administrator
TBS : Turner Broadcasting System
TV : Television
VOD : Video on Demand
VoIP : Voice over Internet Protocol
VPID : Video Process Identity
WAN : Wide Area Network
ix
Table of Contents
Mentor’s Recommendation ....................................................................................................... ii
Acknowledgement .................................................................................................................... v
Abstract .................................................................................................................................... vi
x
1.12 Scope of System Administrator .................................................................................... 6
4.2 DVBlast......................................................................................................................... 18
xi
4.4.1 Teamviewer............................................................................................................ 20
Chapter 5 : Conclusion............................................................................................................ 24
Reference ................................................................................................................................ 25
Appendix ................................................................................................................................. 26
xii
Chapter 1 : Introduction
1.1 Introduction
The program that provide students working to gain skills and use their academic
knowledge in the real field is called internship. The strength and weakness of the student is
tested by the company during internship period. Student gets an opportunity to learn a lot about
the company’s real-world working environment. A student can do interns in different fields
and are allowed to choose their field according to their interest, skill and knowledge. Student
are preferred to choose the internship program carefully because the period is good enough to
enhance the knowledge of student in the real world with practice and guidance within an
organization. After starting internship, internee is assigned under the supervision of senior
employee who will provide some work and introduce to other employees including the rules
and regulation of the company.
1
deployment. All these indicates the company to be recognized as best when it comes to
delivering the services to customer.
2
Figure 1: Organizational Hierarchy
1.7 Background
To work as a system support admin, you should know briefly about the system.
Knowledge, dedication, motivation, concentration, research, information collection and basic
3
use of the system is necessary in this field. I am just a beginner in this field. As it is said,
“Everything in the world starts small and then becomes bigger”, and dedication with self-
motivation is key.
The four-year degree of BSc CSIT covers all the aspects of tech world i.e. IT. After
studying BSc CSIT, students are able to choose the field of work according to their capability
and interest. Students become able to identify themselves. CSIT opens the field such as
programming, networking, database, security, hardware, system, etc. So, as per my interest
and capability I chose system for my future career and joined as internee in WINepal Pvt. Ltd.
as a system support admin.
4
1.9 Objectives
The main objective of system administration is to build the knowledge of system and
implement the knowledge of system. From how the system works to how to maintain the
system is also main objective.
Objectives of system administration are:
To develop the knowledge of system
To implement theoretical knowledge of system and its use
To learn and improve system by monitoring
To help get career insights of system administration
To develop and enhance research and report writing based on system administration
1.11 Motivation
To get to know the real field of system administrator and sharpen my knowledge is the
motivation behind working in IT Company as system support admin. Though the company is
new, highly experienced system administrator is working. I am glad that I am able to work in
a professional environment in a professional way.
Everything in this world is moving towards technology in very fast pace. Most of the
company prefer technology as primary option. There are many IT companies in Nepal who
provide services like web hosting, video-on-demand streaming, app development and
deployment, etc. All of those companies require certain system to work on which provides
opportunity for system admins to handle those systems so that the work will not halt.
5
1.11.1 Motivation for choosing WINepal Pvt. Ltd.
WINepal is IT Company of Highland International Pvt. Ltd. The company has built
video-on-demand streaming service through an app in Nepal called ‘WOW Time’. They
provide live streaming of TV channels. As this company works on video streaming, I was
curious enough to know the system used and the flow of the video-on-demand stream. It was
good decision joining them because I’ve learnt a lot from them till date.
6
Chapter 2 : Literature Review
2.1 Introduction
The literature study of System Administrator (Sysadmin) addresses the person who is
responsible for the maintenance, configuration, and efficient operation of the system,
especially multi-user computers, such as servers. The system admin ensures the performance,
resources, smooth running and reliable use of computers they manage, meets the user needs.
According to time, system admin should acquire some responsibility about the system install,
upgrade components and software, routine automation, maintain policies of security, train or
supervise staff or offer technical support for projects.
7
2.3 OTT
Over-the-top services is the buzz-expression for services carried over the networks,
delivering value to customers, but without any carrier service provider being involved in
planning, selling, provisioning, or servicing them – and of course without any traditional telco
booking revenue directly from them. All of these portals are not owned by networks and most
host OTT services which provide value to end users, and for which traditional carriers get no
specific revenue. Portals are receiving revenue for advertisements but many critics maintain
they are not paying enough for transport of data that allows users to click those data. (Green,
2006)
2.4 IPTV
The next generation of application that is used for live streaming with the help of
internet. OTT is the network specific service or application that requires specific network to
operate. But IPTV is another generation of service to maintain and expand the television
service with the help of internet not with specific network. IPTV provides digital television
service over the internet. (Xiao, 2007)
8
2.5 Popular Tools Used by System Admin
System administrator is like a good mechanic who keeps his work tools well selected
and organized, ready to solve any unknown problems that are presented to him. Including the
maintenance task to prevent problems and despite how well organized he might be, the work
is hard, even in large companies the general tasks are delegated to different people.
(Dominguez, 2017)
Some tasks that a System Administrator might have to do:
Analyze system logs and identify potential errors within local or remote network.
Answer technical queries and assist users.
Install and configure new hardware and/or software and ensure security.
Install updates of operating systems, fixes, and configuration changes.
Solve problems reported by users.
Ensure that the network infrastructure is up and running
Including this in mind, some of the categories of programs used in general by System
Administrator are:
9
Rsync: It is a software that allows us to back up full directories by preserving the files in
a different way. It also has massive way of preserving files through secure protocols i.e.
rsh or ssh or even anonymously as public FTP.
2.5.3 PowerShell
It is the terminal where special commands that implement specific commands and
emulate the use of “pipes” of Unix commands. It was developed with Visual Studio.NET for
windows environment. Since August 2016 it is available in Linux as well. Having MIT license,
the individual components are still private in PowerShell.
2.5.4 Python
It is a programming language that is supported in both Linux and windows as well. It
plays a role to help Sysadmin by collecting and analyzing information with just few lines of
code. GNU Linux has many software that depends on python thus, uninstalling it might cause
those programs to generate problems and act strange.
These are the only selected tools discussed but Sysadmin does not limit to these tools
only. There are many tools that is used by Sysadmin like router administration, use of shell
scripting of different types accordingly, clonezilla for disaster recovery, FTP clients, etc.
10
Chapter 3 : System Analysis and Design
3.1 Introduction to system
In System Administration, at first you have to know what the system is, how the system
is formed which is necessary for administering the system for different purposes like installing,
configuring, monitoring and maintaining. Mostly used system in the field of technology is
Linux which is open source and has large community to solve problems. Linux is focused
primarily in WINepal Pvt. Ltd. Since Linux is open source, my suggestion to everyone is to
use Linux and be hassle free. Due to being open source, user can tweak the system according
the need. To administer the system Sysadmin must know how the system works. In System
Administration, one should have desire to work and should be curious enough to learn
anything.
In WINepal Pvt. Ltd., Ubuntu Linux server is used for development, testing, and
production. Alongside different tools are used for the administration of the system working
fine or not.
11
necessary because if any problem would appear, then Network team from office could
SSH into the server without having physical presence in the server.
Installing Ubuntu was a bit of confusing but was done with direction and
guidance by mentors. I got some idea of Linux installation because of this.
12
Figure 3: System Architecture
3.2.1 Tuner:
For live stream a tuner is required to see if the channels are running smoothly with good
signals or not. To get the successful running of the channels, DVBlast is used as a software. It
is command based simple and powerful demuxer application required for live streaming.
13
libc6
libev4
Above mentioned libraries were absent as it was fresh installation so, both of
those libraries were installed using apt-get in the system.
Above command is example which was used to check the tuning of channels
using dvblast. Frequency is referred as –f, -v is frequency beam which can be vertical
or horizontal, -s is symbol rate of the channels, -m refers to VPID and –c refers to the
configuration file for certain channel. Frequency were inserted by multiplying the
frequency beam by 1000 and symbol rate was also inserted in command by multiplying
symbol rate by 1000.
3.2.2 Encoder:
After the successful tuning of the channels, the encoding was done to generate a stream
for broadcasting which is stored in media server. The stored stream or file on the media server
is then accessed by web server for the TV service provided through app. An encoder is required
for encoding tuned channels. Encoder is of two types i.e. hardware and software. Hardware
encoder is used for paid source while software encoder is used for free source. On encoding,
there are two things needed to be encoded for media service i.e. live tv streaming is video and
audio. For video, h264 is popular encoding which provides lossless encoding and is used for
streaming internet sources. H264 is recommended video compression format. For audio, the
encoding is done to get mp3 and aac file format. Mp3 and aac file format is popular among
which aac is recommended.
14
There are two types of encoder:
Hardware Encoder
Software Encoder
Hardware encoder is used for dedicated processor for encoding data and video.
Hardware encoder are highly priced. Hardware encoder are specialized for just encoding which
can also be said as dedicated for encoding. Since it is dedicated, obviously the hardware
encoder is faster than software encoder. Hardware encoder used in the company is openbox
which is connected after tuner i.e. ird/tbs card.
Software encoder is used for great quality encoding. It has the ability to tweak codecs
to get required bit-rate and video quality. Software encoder are easily upgradable in
comparison to hardware encoders. It also cost low and has customization ability. It has lack of
latency speed according to multiple program usage. After hardware encoder, software encoder
i.e. FFmpeg is used due to its advantages.
15
Figure 4: Transcoding Process of FFmpeg
There was some dependency error that caused the installation to broke. Then
the required dependency was installed because dependency is vital to any software
because the software depends on it.
$ ffmpeg -version
16
ffmpeg version 4.0.3-1~16.04.york0 Copyright (c) 2000-2018 the FFmpeg
$ ffmpeg -i in.mov -vcodec copy -acodec aac -strict experimental -ab 128k out.mp4
3.3 Automation
For automation, shell script is used where the commands for channels to tune and
encode are kept. The configuration scripts are at a location in server from where I tune and
encode for fast processing because channels need to be monitored time to time without wasting
a second. If I take whole day to just tune and encode then the channel monitoring is hampered.
Thus, automation is used for time saving in which I check channels and also do some research
related to scripting.
I was exposed to scripting just some time before I joined internship. Use of scripting is
most important for time saving tasks and automation in any company. Thus, I got some
knowledge from the scripts and starting to research more for the better and profound
knowledge.
17
Chapter 4 : Implementation and Maintenance
4.1 Introduction
The whole system that is implemented needs to be monitored. Mostly the channels that
are setup requires frequent monitoring because sometime the signals may cause the channels
to get disrupted. Sometime the channels lost their sound, sometime their video is scrambled
and sometime the app is disrupted and is not accessible. All the monitoring of channels is done
through the app installed in mobile device, tablet and website. Mostly during the bad weather
condition, most of the channels are disturbed and does not work properly. The channels are
checked one by one from time to time. The channels are listed in specified IP location within
the system within the hardware encoder. The list of encoders is in total of 16. Each hardware
encoder has certain list of channels. The tuner is located at only two IPs i.e. TBS cards. If
tuning is required, I’ve to access those two IPs to re-tune. Each tuner IP has channels set for
tuning. Some channels use IRD boxes which are only accessed through interface that is
displayed by going to the IP and port of the IRD box i.e. http.
4.2 DVBlast
4.2.1 Implementation of DVBlast
DVBlast is a terminal based software that is used for tuning the channels. Those
channels that are used for tuning are directly received from satellite. There are different
satellites that are used for free as well as premium channels. The list of satellites from where
the channels are obtained are given below:
Apstar 7
Insat 4A
Intelsat 20
Asiasat 7
Measat 3A
Intelsat 17
Thaicom 5
The above listed satellites contain channels that are available through those satellites.
There are two types of channels that are used for streaming i.e. free channels and premium
channels. Free channels are the channels that are obtained from the satellite without any cost
18
involvement where the tuning of those channels is required. The channels can be obtained from
the website that has channels list of different sorts. For e.g.: the information of Nepal TV from
Thaicom 5 satellite has following:
In the above table 3563 is the frequency in which the channel Nepal TV is set. ’H’ is
referred to horizontal polarization and ‘F’ after channel name denotes the channel is free.
MPEG-4 is the method that defines the compression of audio and video and SD means standard
definition television. SR is the Symbol Rate which is the rate of state changes that occur in
communications circuit and 8PSK is the 8 Phase Shift Keying. 8PSK is the method that carries
digital information on carrier by changing the phase of carrier. All we need is the frequency
beam and symbol rate.
After getting the information, the tuning process starts. This method of tuning is for
free channels on satellite. Channels are tuned using DVBlast. The channel tuning of Nepal TV
is given below:
After the execution of the above command for Nepal TV channel tuning, the process
started in terminal and displayed never ending process.
The tuning of channel Nepal TV was successful because the command after successful
tuning showed the required SID and channel name. Successful tuning of the channels helps us
receive good signals. The tuning can be failed or unsuccessful which results in receiving bad
signals. During fail in tuning, the process stuck at some point before displaying the required
SID and channels name.
19
For premium channels, there are IRD boxes that is provided by the channel distributor.
There is no requirement of manual tuning of the premium channels but the signal for that box
from antenna via coaxial cable. Those IRD boxes contains channels configured in it. When the
box is activated, the channels run smoothly according to signal. The signals of the channel can
be observed through the GUI interface of the boxes. The interface has the graphical indication
of signal showing Red for bad signal and Green for good signal.
4.3 FFmpeg
4.3.1 Implementation of FFmpeg
FFmpeg is used for processing audio and video files generated by encoding. The use
of ffmpeg is vital to maintain the channels audio and video files. FFmpeg has ability to encode,
decode, transcode, mux, demux, stream, filter and play the audio and video files. FFmpeg tries
to give technically feasible solution for developers of applications and end user alike. FFmpeg
requires input files which is read by the option ‘-i’ and writes to arbitrary number of output
files specified by plain output url.
The above command line code of FFmpeg was used to process audio and video file at
a location in server and convert it into stream and store it in a location in server. ‘-i’ means the
location of input files, ‘-vf’ and ‘-af’ means the video filter and audio filter to be used for the
file. ‘-f’ denotes the output video format to be obtained in the location in server with name
‘channel.stream’.
20
provides user id and password for remote connection. The connection is done one at a time and
some files can also be shared.
Teamviewer was used to access the encoder and tuners in the system if the channels
have problem. It is installed in the pc inside the office that has the private IP access of the
server system. The remote connection for support is done if any issues related to channels
occur. The partner ID is entered to connect to remote computers where partner ID is the ID of
remote pc located at distant location. Then connect to partner button is clicked which asks for
password.
After this the remote computer was connected. Then the system was under control
where we had access to anything and have access to all the files and software to use.
4.4.2 SSH
Secured Shell (SSH) is an encrypted network protocol that is used for accessing
network services securely over the unsafe network. SSH provides secure channel to
communicate between client and server in client server architecture. In this process, SSH client
application is connected to SSH server. SSH was made to replace the Telnet which sends
information in plain text but SSH encrypts that information and secures the information
flowing through unsafe network. SSH is mostly and widely used global protocol for remote
system administration and secure file transfers. It has strong authentication using keys for
remote system administration.
21
Basic form:
$ ssh remote_host
Example:
$ ssh 192.168.10.20:40
$ ssh remote_username@remote_host
Example:
$ ssh [email protected]:40
4.4.3 Winbox
Winbox is the software that is used to monitor MikroTik routers. In the system, winbox
is used to check and monitor the login OTP for the app. There is OTP that is generated with
the association of Nepal telecom. The system that generates OTP is associated with winbox.
The code generation is checked. At first winbox is connected to IP of the router and the login
and password is entered.
After connecting to router, we navigated to IP section and then IPsec. There is list of
IPs that generates OTP every time login is happened. Next, we moved to IPsec section in IP of
Winbox. After moving to that we reached to Installed SAs.
In the section of Installed SAs we found the source address and destination address
where authentication, encryption and current byte is shown. Current byte is changing time to
time. SHA1 is used for authentication of the information and encryption encrypts the
information. Source address is the IP that generates OTP and sends to the destination IP
address. The problem with OTP is that at certain time the current byte becomes zero which
does not produce any bytes and the OTP generation is stuck. If OTP is stuck, then the Live TV
Streaming app will not be accessed on login. This will decrease the customers interest towards
app so, this problem can be solved by clicking the Flush button situated above SPI. This flush
the cache data of the OTP generation and starts the current byte generation that enables the
OTP generation.
22
4.5 Channel Maintenance
If the channels are down and not running properly, following steps are used:
Firstly, the down channel is checked for the slow network issue, if found slow
internet then the network is restarted and if it works well, it is fine if not we go for
next step.
Secondly, the location of channel in hardware encoder is necessary to know i.e. in
encoder A certain list is resided which is accessed through ssh in terminal.
Then, the down channel even after restarting or smooth internet connection is not
working then the channels need to get re-process using FFmpeg. FFmpeg is
accessed in a specified location of the folders in the system using and the scripts
that has encoder code written is executed to re-process. If using ffmpeg the issue is
solved, it is ok to monitor other channels but if not, we go for third step.
Similarly, if the channel is not up and running even after using ffmpeg then we
surely need to re-tune the channel using DVBlast. The DVBlast is located at
specific folder in the system which has configuration file for each list of channels
stored. DVBlast is accessed to re-tune the free channels. The premium channels do
not require re-tuning. After going to dvblast folder, the script for tuning is run to
re-tune the channels. If the channels are tuned nicely the commands execute
successfully showing channel names and service id of them. If the channels work
fine after re-tuning, we can proceed for monitoring else we need to go for next step.
Now, if channel is still having issue then there is disturbance in signal from the
source. We need to wait for the source to have it maintained.
Sometime the channels have the excessive user and the hardware encoder is down which
cause the encoder down getting channels down as well closing ssh connection to those
encoders. In this case, we need to reboot manually the hardware encoders in the server room.
Manual reboot is required because we do not have the access to encoders using remote access
i.e. ssh where the error is “no route to host” or “host is down”.
23
Chapter 5 : Conclusion
The period of internship of around 10 weeks has taught me a lot of things like
communication skills, research and development, team work, team coordination, etc. After
working for 10 weeks it was obvious that my confidence was built and I’ve learnt about the
system architecture of the media service company. The working of system and the system
administration. Working in a media service company taught me about the implementation of
the IT service in the field of media. I also gained the knowledge on use of different tools
required for the media service i.e. Live TV streaming through app. This improved my
knowledge of system and helped me gain career insights about what to do next.
From the knowledge of system administration tools to the use of the system, configure
the system, monitor system and maintain them accordingly. My office is about to upgrade the
live streaming service from network based to internet based i.e. IPTV. I am glad to know that
I’m going to be part of IPTV conversion of the company. With the help of mentors, I am about
to start research on IPTV and its implementation.
24
Reference
Burgess, M. (2003). On the theory of system administration. Science of Computer
Programming, 49(1-3), 1-46.
Dominguez, A. (2017, October 31). Linux tools you should know if you work as a sysadmin.
Retrieved January 24, 2019, from Pandorafms Monitoring.
Green, W., Lancaster, B., & Sladek, J. (2006). Over the Top Services. LTC International.
Haber, E. M., & Bailey, J. (2007, March). Design guidelines for system administration tools
developed through ethnographic field studies. In Proceedings of the 2007 symposium on
Computer human interaction for the management of information technology (p. 1). ACM.
Xiao, Y., Du, X., Zhang, J., Hu, F., & Guizani, S. (2007). Internet protocol television (IPTV):
the killer application for the next-generation internet. IEEE Communications
Magazine, 45(11), 126-134.
25
Appendix
Teamviewer
This is the login page of Teamviewer software where Partner ID can or let remote
computer to access one’s computer with ID and Password.
This shows that the connection is successful after entering remote computer’s ID and
password for remote connection.
26
7zip
This is an example of the use of 7zip to compress different files like file1, file2,.. file4
to files.7z
Powershell
27
Python
In terminal by typing command “python” opens the python scripting area where python
can be programmed.
Ubuntu Installation
This screen has different additional softwares that is needed while installing Ubuntu
where OpenSSH server is must important one.
28
Channel Tuning
This shows the successful tuning of channel using DVBlast which displays the list of
channels in the required frequency.
Winbox
29
This is the login page of Winbox that connect to the IP of the router, Login is the
username and password is the password required for the IP address connection.
This is the Installed SAs section which is visited after navigating from Winbox Logged
in page’s i.e. IP>IPsec>Installed SAs(Tab). This displays the source and destination address
which is used to transfer the OTP with SHA1 authentication, AES encryption and the current
bytes are the number of bytes used to generate OTP.
30