Wireless Mobile and Multimedia Networking
Introduction:
The Wireless Multimedia and Networking (WMN) research team performs basic and practical research in wireless communication and communication, media distribution, and sectors closely connected to wireless communication and communication. Investigates the dynamic transmission of media information while maintaining appropriate service and information quality.
The study is centred on several areas of information theory, signal processing and applied statistics, communication theory, wireless networks, and security. In today’s environment, no one can envision their existence without the usage of a cell phone. This has an impact on every aspect of people’s lives. It is critical to have a well-functioning network infrastructure. It enables individuals all over the world to communicate with one another. It contains a few key components that can help move the process ahead quickly. A broadband network backbone is used by multimedia networks to access networking services. They may use this to advocate for the development of a new paradigm of multimedia networking.
Task 1:
Topology
Python Script:
from mininet.net import Mininet
from mininet .log import setloglevel
from mininet.cli import CLI
from mininet.link import TCLink
from mininet.node import Controller, RemoteController, OVSKernelAP, OVSSwitch
def topology():
net= Mininet(controller= Remote Controller, link= TCLink, accessPoint=OVSKernelAP)
print”A New Node “
ap1 = net.addAccessPoint( ‘AP1’, ssid= ‘ap1′, mac=’00:00:00:00:10:02′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘1’, position=’50,75,0′, range=’25’)
ap2 = net.addAccessPoint( ‘AP2’, ssid= ‘ap2′, mac=’00:00:00:00:10:03′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘6’, position=’50,125,0′, range=’25’)
ap3 = net.addAccessPoint( ‘AP3’, ssid= ‘ap3′, mac=’00:00:00:00:10:04′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘2’, position=’100,125,0′, range=’25’)
ap4 = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:10:05′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’150,125,0′, range=’25’)
ap5 = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:10:06′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’150,75,0′, range=’25’)
ap6 = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:10:07′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’200,75,0′, range=’25’)
sta1 = net.addStation( ‘STA1′, mac=’00:00:00:10:11:08′, ip=’147.192.10.2/24‘, position=’50,25,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
sta2 = net.addStation( ‘STA2′, mac=’00:00:00:10:11:09′, ip=’147.192.10.3/24′, position=’50,25,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
sta3 = net.addStation( ‘STA3′, mac=’00:00:00:10:11:10′, ip=’147.192.10.4/24′, position=’50,25,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
udps = net.addStation(‘UDPS’, mac=’00:00:00:10:01:01′, ip=’147.192.10.1/24′, position=’50,140,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
c0 = net.addController(‘c0′, controller=RemoteController, ip=’127.0.0.1’, port=1309)
net.addLink(ap1, sta1)
net.addLink(ap4, sta2)
net.addLink(ap3, sta3)
net.addLink(ap1, ap2)
net.addLink(ap3, ap5)
net.addLink(ap5, ap6)
net.build()
c0.start()
ap1.start( [c0] )
ap2.start( [c0] )
ap3.start( [c0] )
ap4.start( [c0] )
ap5.start( [c0] )
ap6.start( [c0] )
CLI( net )
net.stop()
if name == ‘main’:
setLogLevel( ‘info’ )
topology()
In Activity 1, we are trying to write a new Python script that will be used primarily to build new communication models between access points and channels. This created design is primarily made up of six channels and six entry points. Channels with smart devices that can switch between a laptop and any other WIFI-enabled device. Using the information and conditions provided above, the provided topology should be forwarded to the Mininet API in Python text. To do this, different types of paragraphs are provided, and all points are linked. Here, one pushes the other to keep their services running, and is connected to a special channel that can manage and measure system performance. As a result, many different types of codes are used to perform the function correctly.
Mininet API
The basic topology consists of a single OpenFlow button linked to two hosts and an OpenFlow reference control. It is simple to create and perform network topology simulations using the Mininet miniedit tool. Before beginning the simulation process, network components can be constructed and configured in topology.
Mininet provides a development area for LINUX that allows the establishment of new networks while dealing with a number of SDNs. Mininet is a programme that aids in the creation of a PC-based software development network. Mininet’s built-in features allow for the exploration of complicated topologies without the requirement for a physically visible network. Furthermore, it aids in the development of software-defined networks that can be tested quickly. Furthermore, it enables cooperation among a few engineers working on the same topology. As a result, mininet provides a Python API for creating and testing network prototypes.
Task 2:
Ad-hoc topology
Python Script
from mininet.net import Mininet
from mininet .log import setloglevel
from mininet.cli import CLI
from mininet.link import TCLink
from mininet.node import Controller, RemoteController, OVSKernelAP, OVSSwitch
def topology():
net= Mininet(controller= Remote Controller, link= TCLink, accessPoint=OVSKernelAP)
print”A New Node “
ap1 = net.addAccessPoint( ‘AP1’, ssid= ‘ap1′, mac=’00:00:00:00:10:02′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘1’, position=’50,75,0′, range=’25’)
ap2 = net.addAccessPoint( ‘AP2’, ssid= ‘ap2′, mac=’00:00:00:00:10:03′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘6’, position=’50,125,0′, range=’25’)
ap3 = net.addAccessPoint( ‘AP3’, ssid= ‘ap3′, mac=’00:00:00:00:10:04′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘2’, position=’100,125,0′, range=’25’)
ap4 = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:10:05′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’150,125,0′, range=’25’)
ap5 = net.addAccessPoint( ‘AP5’, ssid= ‘ap4′, mac=’00:00:00:00:10:06′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’150,75,0′, range=’25’)
ap6 = net.addAccessPoint( ‘AP6’, ssid= ‘ap4′, mac=’00:00:00:00:10:07′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’200,75,0′, range=’25’)
sta1 = net.addStation( ‘STA1′, mac=’00:00:00:10:11:08′, ip=’147.192.10.2/24′, position=’50,25,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
sta2 = net.addStation( ‘STA2′, mac=’00:00:00:10:11:09′, ip=’147.192.10.3/24′, position=’50,25,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
sta3 = net.addStation( ‘STA3′, mac=’00:00:00:10:11:10′, ip=’147.192.10.4/24′, position=’50,25,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
udps = net.addStation(‘UDPS’, mac=’00:00:00:10:01:01′, ip=’147.192.10.1/24′, position=’50,140,0′, passwd=’studentID’, encrypt=’wpa2′, range=30)
sta4adhoc = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:00:05′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’125,150,0′, range=’40’ )
sta5adhoc = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:00:06′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’150,150,0′, range=’40’ )
sta6adhoc = net.addAccessPoint( ‘AP4’, ssid= ‘ap4′, mac=’00:00:00:00:00:07′, passwd=’studentID’, encrypt=’wpa2′, channel= ‘3’, position=’175,150,0′, range=’40’ )
c0 = net.addController(‘c0′, controller=RemoteController, ip=’127.0.0.1’, port=4639 )
net.addLink(ap1, sta1)
net.addLink(ap4, sta2)
net.addLink(ap3, sta3)
net.addLink(ap1, ap2)
net.addLink(ap3, ap5)
net.addLink(ap5, ap6)
net.build()
c0.start()
ap1.start( [c0] )
ap2.start( [c0] )
ap3.start( [c0] )
ap4.start( [c0] )
ap5.start( [c0] )
ap6.start( [c0] )
CLI( net )
net.stop()
if name == ‘main’:
setLogLevel( ‘info’ )
topology()
In this section, we attempt to move task one ahead. This topology was created primarily to add certain qualities that aid in the performance of the function. MESH systems add three additional phases to ad-hoc networks. It may start the work perfectly and then add the necessary codes to finish it.
Task 3:
Python Script:
topo = Topo()
topo.addSwitch(“s1”)
topo.addSwitch(“s2”)
topo.addSwitch(“s3”)
topo.addSwitch(“s4”)
topo.addSwitch(“s5”)
topo.addSwitch(“s6”)
topo.addSwitch(“s7”)
topo.addSwitch(“s8”)
topo.addHost( ‘h1′, mac=’00:00:00:00:00:01′, ip=’147.197.129.1/24′, VLAN=’300’)
topo.addHost( ‘h2′, mac=’00:00:00:00:00:02′, ip=’147.197.129.2/24′, VLAN=’400’)
topo.addHost( ‘h3′, mac=’00:00:00:00:00:03′, ip=’147.197.129.3/24′, VLAN=’300’)
topo.addHost( ‘h4′, mac=’00:00:00:00:00:04′, ip=’147.197.129.4/24′, VLAN=’400’)
topo.addHost( ‘h5′, mac=’00:00:00:00:00:05′, ip=’147.197.129.5/24′, VLAN=’300’)
topo.addHost( ‘h6′, mac=’00:00:00:00:00:06′, ip=’147.197.129.6/24′, VLAN=’400’)
topo.addHost( ‘h7′, mac=’00:00:00:00:00:07′, ip=’147.197.129.7/24′, VLAN=’300’)
topo.addHost( ‘h8′, mac=’00:00:00:00:00:08′, ip=’147.197.129.8/24′, VLAN=’400’)
topo.addHost( ‘h9′, mac=’00:00:00:00:00:09′, ip=’147.197.129.9/24′, VLAN=’300’)
topo.addHost( ‘h10′, mac=’00:00:00:00:00:01′, ip=’147.197.129.10/24′, VLAN=’400’)
topo.addHost( ‘h11′, mac=’00:00:00:00:00:02′, ip=’147.197.129.11/24′, VLAN=’300’)
topo.addHost( ‘h12′, mac=’00:00:00:10:10:03′, ip=’147.197.129.12/24′, VLAN=’400’)
topo.addHost( ‘s’, mac=’00:00:00:10:10:04’, ip=’10.10.10.1/8′, VLAN=’400′)
topo.addLink(“s1”, “s2”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s1”, “s3”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s2”, “s4”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s3”, “s4”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s1”, “s4”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s3”, “s5”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s3”, “s6”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s4”, “s7”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s4”, “s8”, bw=500.0, delay=’1ms’, use_htb=True, , loss=’0.5′)
topo.addLink(“s5”, “h1”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s5”, “h2”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s5”, “h3”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s6”, “h4”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s6”, “h5”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s6”, “h6”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s7”, “h7”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s7”, “h8”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s7”, “h9”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s8”, “h10”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s8”, “h11”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s8”, “h12”, bw=100.0, delay=’0ms’, use_htb=True, , loss=’0′)
topo.addLink(“s2”, “s”, bw=1000.0, delay=’0ms’, use_htb=True, , loss=’0′)
net = Mininet(topo=topo, link=TCLink)
net.start()
CLI(net)
net.stop()
The work would be done with the assistance of the aforementioned codes. This job also includes a number of variables that may be used to simulate the performance of the Python. This gives those variables the capacity to migrate from one location to another.
To import the mininet package into the Python programming language, use the import command. Other applications such as Topo, TCLink, and CLI are also included in the importing.
- Topo() is a Python function that may be used to create an empty topology from scratch. Before the Python script can establish the connecting connection that will connect the two components, it must first contain several network components such as a host and a switch.
- Using the topo.addSwitch() method, a python script is required to add 12 switches to the network, as seen in the image above. Using the topo, hosts may be added to a communication network.
- The topo may be used to connect the addHost() function and switches.
- The addLink() method is used to connect hosts and switches in the network’s topology.
Results:
Client Program Screenshot
Server Program Screenshot
Screenshot of video streaming in the host server
Screenshot of the file transfer
- Throughput:
Networking throughput is described in communication as a characteristic that fixes the data rate carriers through the network in the communication channel between the end-points. In networking, throughput is primarily defined as the pace at which data is processed. It also calculates the pace at which messages are delivered via a few network communication channels. Throughput primarily measures the number of individual jobs completed in a certain time period. The graph’s line represents the quantity of data transmitted by the server every second interval. A flat throughput graph caused by an increase in network latency and user load indicates a problem with network capacity.
Throughput Graph
I/O graph:
IO graphs are simple and generic graphs created using the available packets in the capture file. Wireshark has a few unique procedures for extracting the IO graph of individual network connections. The packet selection procedure in the capture file, followed by a click on the IO graph under the relevant portion of statistics. This type of IO graph offers critical information in packet transmission from source to receiver situations such as traffic highs and lows along the network path. When it comes to packet count data and charting time, the x-axis of the graph indicates seconds, while the y axis represents the number of packets received. This type of analysis is mostly used to track and resolve system defects and malfunctions.
The output of Wireshark is mostly used to identify TCP packets and Flagged TCP packets in network transfers. The above wireshark data indicates that the delivery begins after a certain time interval of roughly 32000 seconds, which is described as the time delay.
- Success Rate:
TCP stands for transmission control protocol, and it is a standard that has been established in order to start and maintain a conversation on the network through which application programmes normally exchange data. The Transmission Control Protocol is a network communication protocol that, in terms of how data packets are transmitted between computers, is quite similar to the internet protocol (TCP). A packet is a unit of data sent across a network in network communications, and a packet is the unit of data transported across a network in a TCP/IP connection. When using TCP to send data, the size of the TCP window and round-trip latency are the two most important aspects to consider. To determine the TCP success rate, a number of approaches and procedures must be used
There is 1Gig of data to transfer with a round trip latency of 30 milliseconds, and the TCP rate must be computed. The TCP window size must first be translated from bytes to bits. If a normal TCP window size of 64Kb is utilised, the window size in bits is:
65536 bytes Equals 64 kB
65536*8 is 524288 bits
This TCP window size is measured in bits and must be divided by a round trip delay of 30 milliseconds. In light of this,
524288/0.030 = 17476266 bits per second throughput, equating to 17.4 Mbps maximum output.
Analysis:
The final stage in research is to examine the results in order to determine the success rate. Every stage of this process of improvement is critical. This might aid in the correct generation of the design. The clients successfully transport the TCP highlighted pocket during the first step (Jia, et al. 2020, p. 54). This signifies that the networking system is capable of doing its function appropriately. In the second stage, engineers attempt to compute this system’s TCP rate. TCP-Window-Size-in-Bits / Latency-in-Seconds = Bits-per-Second-Throughput is the formula for calculating this. This may be done as follows:
Windows has a size of 64KB, which translates to 65536 bytes. In 8 seconds, latency-in-second is determined.
It is 65536*8 = 528244 bites, according to the calculation.
This signifies that this networking system has a better success rate than the others. It can manage several systems at the same time. With the aid of those calculations, it is simple to determine that different sizes of windows accomplish the task. In any case, the APS is physically connected so that the cloud may connect additional appliances correctly. The performance of several components of this system contributed to the system’s success. This is critical for shifting viewpoints. These factors can improve the system’s speed and accuracy.
This system may be used by several people with their laptops or personal PCs. This might result in a significant increase in system traffic. As a result, the application requires more features to effectively serve the objective. In the last section, those features are executed concurrently to demonstrate its approval of the development. This can demonstrate how accurately the result is completed.
Reasons for packet loss and delay:
Yes, increasing the size and quality of a video should cause more packet loss and delay. When the video file size and quality increase, so does the time it takes to send it. Packet latency and loss rise as video quality and size grow.
Contribution of packet loss and data transport delay:
When sending data from client to server or vice versa, packet loss occurs due to noise interferences and other relevant situations, resulting in data loss. Video quality has suffered as a result of packet loss, which has hampered overall network performance. Packets are delayed when there are issues with the connection, IP address, or security. The server network has less packet delay due to the reduced size of the packet.
Conclusion:
At the end of this project, one can achieve the goal of their development programme. At various stages of the project, several settings are employed to support the work. This has the potential to flawlessly drive the task’s success. This networking system exhibits communication with other parts while also establishing a relationship between the features. Every quality plays a part in defining its strengths and weaknesses. This can be used by several people at the same time. In compared to another software, the particular traits of this programme can retain its ethnicity. In order to execute the work appropriately, many variables are pushed. Such a new design would be impossible to create otherwise. This has the potential to be big in the mobile network system industry.
No Fields Found.