0% found this document useful (0 votes)
44 views22 pages

ProjectList2021 2022

This document provides guidelines for students to choose and complete an embedded system and wireless network project for the first semester of 2021-2022. It lists several potential project topics related to network emulation/simulation, wireless technologies and security, long-range wireless protocols, and embedded operating systems and routing software. For each topic, it outlines requirements such as the expected breakdown of theory versus experimentation, suggested experiments and scenarios to implement, expected topology designs, and metrics to measure like bandwidth, latency and packet loss. Students must analyze related work, source code, protocols and provide documentation in their final report.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views22 pages

ProjectList2021 2022

This document provides guidelines for students to choose and complete an embedded system and wireless network project for the first semester of 2021-2022. It lists several potential project topics related to network emulation/simulation, wireless technologies and security, long-range wireless protocols, and embedded operating systems and routing software. For each topic, it outlines requirements such as the expected breakdown of theory versus experimentation, suggested experiments and scenarios to implement, expected topology designs, and metrics to measure like bandwidth, latency and packet loss. Students must analyze related work, source code, protocols and provide documentation in their final report.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

Embedded system &

Wireless network
Project List – 1st Semester /2021-2022
Rules [1/2]
• Each topic/1 group {no overlapped topic} • Each group
• At most 3 members
• Ratio of project scores {mixed of ratio 1 & ratio 2}
• Criteria 1 Ratio
• 30% in theory: operations, design, algorithms, standards
• 35-50% in demo: testing/experimental scenarios, trace/log files, input parameters, output metrics,...
• 35-50% in opensource-code analysis: files/DIR, main data structures, compile & debug steps, /initialization,
flow diagram of functions calls [transmitting, receiving, forwarding, processing,...], debug & verification
• Critera-2 Ratio
• 60% presentation performance (no absences are allowed) (include Q&A with lecturer)
• Can be presented in both Vietnamese and English (English would have bonus points)
• 35% reports, slides, codes/apps/logs, demos
• English report would have bonus points
• 5% participation in the other presentations {in other slots}
Rules [2/2]
• Format:
• No. of Pages: at least 50 pages, at most 150 pages
• Font: Time News Roman 12, with line spacing 1.5
• Languages: Vietnamese or English (English would have bonus points)
• Structure of report:
• Cover page with topic title
• Table of contents [use MS WORD cross-references]
• List of acronyms/abbreviations
• List of figures [use MS WORD cross-references]
• List of tables [use MS WORD cross-references]
• Part 01: Introduction (optional)
• Part 02: Related work/Literature review // Trình bày lại các kiến thức/công nghệ/nghiên cứu liên quan theo cách hiểu và ngôn ngữ của các bạn.
• Part 03: Methodology/Architecture Design/Concept (can be yours or of related work)
• Part 04: Code analysis/Compile/Debugging/Tracing/Logging, Demo Scenarios/Arch.,
• Part 05: Demos/ Experimental Implementation/Results
• Part 06: Conclusions (optional)
• Workloads table (write in detail who ‘s responsible for each task in the project
• List of references
• APPENDIXES
Project List – Network emulation/simulation
• Network simulator 3: https://www.nsnam.org |
https://github.com/nsnam
• https://github.com/GNS3/gns3-gui
• TC/Linux Kernel:
https://access.redhat.com/documentation/en-us/red_hat_enterprise
_linux/8/html/configuring_and_managing_networking/linux-traffic-co
ntrol_configuring-and-managing-networking
• DummyNet: https://www.freebsd.org/cgi/man.cgi?dummynet
Project List – Network emulation/simulation
• Network simulator 3: https://www.nsnam.org | https://github.com/nsnam
• Requirements (ratio: 30% theory + 70% experiment):
• Related work: https://sci-hub.se/https://link.springer.com/chapter/10.1007/978-3-642-12331-3_
2
• Source-code/Protocol/Algorithm/Specification analysis :
• general architecture/concept/function called flow of the Network simulator 3,
• Flow of the simulation when it starts: how nodes operate (send, transmit, receive)
• Some of the following criteria should be done (more on experimenting)
• Topology must have at least 3 nodes.
• Plugins/Libs: install 3 libs/plugins at least (Ex: PyGraphViz)
• Demos of at least 2 wireless technologies (Ex: 802.11ax/ac/n, Zigbee, 3G/4G)
• Low-noise scenario vs. noisy scenario (measure bandwidth, loss-rate, latency)
• Low-node count vs. high-node count scenario (measure bandwidth, loss-rate, latency)
• Multiple access: CSMA/CA simulation
• Various applications at application layer (optional)
Project List –
Network
emulation/simulation
• https://github.com/GNS3/gns3-gui
• Requirements (ratio: 30% theory + 70% experiment):
• Source-code/Protocol/Algorithm/Specification analysis
• General architecture/concept/
• function called flow of the Graphical Network simulator 3
• Some of the following criteria should be done:
• Demos of at least 3 wireless technologies (Ex: 802.11ax/ac/n, Zigbee, 3G/4G)
• Topology should look likes the Picture in background
• Low-noise scenario vs. noisy scenario (measure bandwidth, loss-rate, latency)
• Low-node count vs. high-node count scenario (measure bandwidth, loss-rate, latency)
• Multiple access: CSMA/CA simulation
• Various applications at application layer (optional)
Project List – Network emulation/simulation
• Traffic Control/Linux Kernel – Link Emulation
Requirements (ratio: 50% theory + 50% experiment):
• Source-code/Protocol/Algorithm/Specification analysis :
• Related work: https://hal.inria.fr/inria-00425613/document
• general architecture/concept/function called flow diagram of the TC inside Linux Kernel
• How Traffic Control IP datagram, rules, …
• Some of the following criteria should be done:
• Should use Alpine light-weighed Linux for virtualization
• Demos of at least 5 rules ( bandwidth limitation, artificially latency, loss-rate)
• Each scenario must have topology design: at least 3 nodes ( VM(s) / containers), 1 node acts as router (which has 2 NIC(s))
• Measure bandwidth, loss-rate, jitter, latency/RTT (using Iperf2/3, Ping )
• High node-code experiment(optional).
• Non-emulation vs emulation.
• System clock/timing: impact on the Emulation (optional)
• Real-world scenario (optional)
Project List – Network emulation/simulation
• DummyNet – Link Emulation
Requirements (ratio: 50% theory + 50% experiment):
• Source-code/Protocol/Algorithm/Specification analysis :
• Related work: http://caia.swin.edu.au/reports/160226A/CAIA-TR-160226A.pdf
• general architecture/concept/function called flow diagram of the DummyNet
• How DummyNet IP datagram, rules, …
• Some of the following criteria should be done:
• FreeBSD (Unix) : http://freebsd.org
• Demos of at least 5 rules ( bandwidth limitation, artificially latency, loss-rate)
• Each scenario must have topology design: at least 3 nodes ( VM(s) / containers), 1 node acts as router (which has 2 NIC(s))
• Measure bandwidth, loss-rate, jitter, latency/RTT (using Iperf2/3, Ping )
• High node-count experiment (optional).
• Non-emulation vs emulation.
• System clock/timing: impact on the Emulation (optional)
• Vs. Real-world scenario. (optional)
Project List – Wireless/Wireless security
• Wifi WPA 3:
https://www.wi-fi.org/download.php?file=/sites/default/files/private/
WPA3_Specification_v3.0.pdf
• Aircrack-NG + Hashcat:
• Long-range wireless protocol:
• Zigbee: https://zigbeealliance.org/solution/zigbee/
• LoRA: https://lora-alliance.org/about-lorawan/
Project List – Wireless/Wireless security
• Aircrack-NG + Hashcat(GPU):
Requirements (40% Theory + 60% Experiment):
• Source-code analysis:
• general architecture/concept/function called flow of the Aircrack-aireplay, air-mon
• How Aircrack can create MITM attack (de-auth method explain, how it capture WPA2/3 4-way
handshake)
• Optional: source analysis HashCat
• Some of the following criteria should be done:
• Topology must have: 1 AP + 1 victim station + 1 attacker station (Laptop with Kali linux)
• Wireless security scenarios: WPA2-Personal, WPA2-Enterpise, WPA3.
• Wireless 802.11n at least (ac/ax optional)
• Password strength: at least 8-9 characters (alpha-numberic) | using Dictionary attack
• Logs: *.pcap, *.hcappx , 4-way handshakes logs.
Project List – Wireless/Wireless security
• WPA3
Requirements (60% Theory + 40% Experiment)):
• Source-code/Protocol/Algorithm/Specification analysis :
• general architecture/concept/specification of the WPA3
• How to avoid key(wifi password) penetration
• 4-way handshake mechanism.
• How keys are store on Access Point.
• Some of the following criteria should be done:
• Can use Aircrack/Wireshark to capture WPA3 4-way handshake related packet.
• Must have: 1 AP + 1 station (2 station is optional)
• Wireless security scenario: WPA3.
• Wireless 802.11n at least (ac/ax optional)
• Password strength: 8 characters (alphanumberic)
• Logs: *.pcap, 4-way handshakes logs.
Project List – Wireless/Wireless security
Long-range wireless protocol:
• Zigbee: https://zigbeealliance.org/solution/zigbee/
• LoRA: https://lora-alliance.org/about-lorawan/
Requirements (75% theory + 25% experiment):
• Source-code/Protocol/Algorithm/Specification analysis :
• general architecture/concept/specification of the ZigBee/LoRA
• Packet structures, operation distance, frequency band, channel no. ,..
• How zigbee/loRA handle Multiple Access (CSMA/?)
• How zigbee/loRA it minimize energy-usage and maintain long-range communication.
• Some of the following criteria should be done:
• Real embedded devices experiment are optional (bonus point), demo sending Zigbee/LoRA packets across communication channel,
energy usage measuring.
• https://hshop.vn/collections/lora
• https://hshop.vn/collections/zigbee
• Various-distance experiments (real-device/emulation/simulation)
• Non-noise vs. noisy experiments (emulation/simulation)
• Captured packet, logs.
Project List – Embedded OS/Routing
software
• RouterOS: OpenWRT: https://openwrt.org | OpenSense
• ContikiOS: https://github.com/contiki-os/contiki
• BalenaOS: https://www.balena.io/os/
• AODV + OLSRd:
• https://github.com/OLSR/olsrd
• https://github.com/erimatnor/aodv-uu
• Netfilter: https://www.netfilter.org | kernel.org
• B.A.T.M.A.N:
https://www.open-mesh.org/projects/open-mesh/wiki/BATMANConc
ept
Project List – Embedded OS/Routing
software
• AODV+OLSRd:
• https://github.com/OLSR/olsrd
• https://github.com/erimatnor/aodv-uu
Requirements (60% Theory + 40% Experiment):
• Source-code/Protocol/Algorithm/Specification analysis :
• general concept/algorithm of the AODV and OLSRd
• Packet structures, transmission rate/slots.
• How nodes maintain routing info.(init, sharing recover routing table) in MANET
• Some of the following criteria should be done:
• Real-devices (laptop) experiment is welcome, at least 3 nodes ( ~ 3 PC)
• Virtual emulation devices (3 VM(s)), each of 3 nodes must install routing software
• AODV vs. OLSRd amount of routing packets, overhead (~ delay from routing))
• Measure bandwidth, loss-rate, latency.
• Captured packet, logs (wireshark, tcpdump)
Project List – Embedded OS/Routing
software
• Netfilter: https://www.netfilter.org | Linux Kernel .org
• Requirement (60% Theory + 40% Experiment)
• Source-code/Protocol/Algorithm/Specification analysis :
• How it’s been adopted by modern network applications.
• General architecture/concept/function called flow of the Netfilter inside Linux Kernel
• How Traffic Control IP , TCP Segment, UDP datagram, rules,…
• Hooks position to apply Netfilter rule.
• Data structures of ip.c, tcp.c, udp.c inside Linux kernel source code AND data structure of NetworkFilter related object such
as Rule, Hooks, …
• Linux Kernel 4.x , kernel 5.x vs older Netfiler in older version of kernel
• Some of the following criteria should be done:
• Demos of at least 10 rules ( bandwidth limitation, artificially latency, loss-rate): each rule should have a separated *.c program
• Each scenario must have topology design: at least 3 nodes ( VM(s) / containers), 1 node acts as router (which has 2 NIC(s))
• Measure bandwidth, loss-rate, jitter, latency/RTT (using Iperf2/3, Ping )
• High node of nodes experiment.
• Non-filter vs filtering.
• Blocked by IP, port , packet pattern (ex: tcp syn flood)
Project List – Embedded OS/Routing
software
• B.A.T.M.A.N:
https://www.open-mesh.org/projects/open-mesh/wiki/BATMANConcept
Requirements (75% Theory + 25% experiment):
• Source-code/Protocol/Algorithm/Specification analysis:
• general architecture/concept/algorithm of the BATMAN
• Packet structures, transmission rate/slots.
• How nodes maintain routing info.(init, sharing recover routing table) in MANET
• How it’s been adopted in real-world applications (give at least 3 example)
• Some of the following criteria should be done:
• Real-devices (laptop) experiment is welcome, at least 3 nodes ( ~ 3 PC)
• Virtual devices (3 VM(s)), each of 3 nodes must install routing software
• The amount of routing packets, overhead (~ delay from routing))
• Captured packet, logs (wireshark, tcpdump.)
Project List – Embedded OS/Routing
software
• OpenWRT: https://openwrt.org
• ContikiOS: https://github.com/contiki-os/contiki
• BalenaOS: https://www.balena.io/os/
Requirements (50% theory + 50% experiment):
• Source-code/Protocol/Algorithm/Specification analysis:
• General architecture/concept/component diagrams of the 3 OS(s)
• OS features, services (give at least 3-4 popular examples).
• At least 3 well-known libs/plugins for each OS.
• Implement a service/lib for those OS(s) (optional).
• Some of the following criteria should be done:
• Real-devices (router(TPLink)) for OpenWRT experiment is optional( bonus point).
• If using VM(s), topology must have at least 3 Subnet(s), demos at least 3 services (ex: DHCP, firewall, VPN, …)
• Real-devices ContikiOS/BalenaOS ( RaspberryPI, Aduino).
• Implementation of simple library for the 3 OS(s).
• Demo of at least 2 function (Ex: blinking LED) if using real-devices
• Virtual devices (3 VM(s)), each of 1 nodes must install routing software
• Videos of compiling tool/software,
Project List – Virtualization container
• LXC container virtualization: https://linuxcontainers.org
• http://Kubernetes.io - container orchestration software: Kubernetes (*)
Requirements:
(60% theory + 40% experiment applied for (NT131.M11.MMCL)
(50% theory + 50% experiment applied for (NT131.M12.MMCL)
• Source-code/Protocol/Algorithm/Specification analysis :
• General architecture/concept/component diagrams of the LXC container technology
• General architecture/concept/component diagrams of the Kubernetes (*)
• LXC container ‘s features, services (give at least 3-4 popular examples).
• Implement a service/lib using LXC container (optional).
• Some of the following criteria should be done:
• Demo how-to compile/debug LXC Container: debug processes info(s), resource monitor
• Demo how-to encapsulate and run a service/process/application inside the LXC container.
• Demo how-to connect two LXC containers via a virtual network adapter on a single host/machine.
• Demo how-to run LXC container under Kubernetes orchestration. (*)
*: NT131.M11.MMCL class must include this
Project List – Virtualization container
• Containerd container virtualization: http://containerd.io
• http://Kubernetes.io - container orchestration software: Kubernetes (*)
(60% theory + 40% experiment applied for (NT131.M11.MMCL)
(50% theory + 50% experiment applied for (NT131.M12.MMCL)
• Source-code/Protocol/Algorithm/Specification analysis:
• General architecture/concept/component diagrams of the Containerd technology
• General architecture/concept/component diagrams of the Kubernetes (*)
• Containerd container ‘s features, services (give at least 3-4 popular examples).
• Implement a service/lib for using containerd (optional).
• Some of the following criteria should be done:
• Demo how-to compile/debug Containerd : debug processes info(s), resource monitor
• Demo how-to encapsulate and run a service/process/application inside the Containerd.
• Demo how-to connect two Containerd via a virtual network adapter on a single host/machine.
• Demo how-to run Containerd under Kubernetes orchestration. (*)
*: NT131.M11.MMCL class must include this
Project List – Virtualization container
• Kubernetes (k8s) container orchestration: http://kubernetes.io (only
apply for (NT131.M12.MMCL)
Requirements (60% theory + 40% experiment):
• Source-code/Protocol/Algorithm/Specification analysis:
• General architecture/concept/component diagrams of the Kubernetes.
• Detailed explanations of each components.
• K8s‘s features, services (give at least 4-5 popular examples).
• Some of the following criteria should be done:
• Demo how-to run/deploy a K8s cluster: 3 nodes (virtual machines)
• Demo how-to write K8s descriptor files (service.yml, deployment.yaml, …) include
explanation
• Deploy an example of the well-known IoTs services platform on K8s (do your research)
Project List – IoT Message Protocols ( only
for NT131.M12.MMCL)
MQTT - https://mqtt.org
Requirements (60% theory + 40% experiment):
• Source-code/Protocol/Algorithm/Specification analysis:
• Specification/concept/component diagrams of MQTT protocol.
• Detailed explanations of each components/packet structure.
• Give at least 3-4 well-known use-cases and example (explain in detail).
• Some of the following criteria should be done:
• Demo topology: 1 MQTT broker(include Message server) + or 1 separated server + at
least 1 Client (Message producer) (real-device likes Raspberry, Arduino are welcome)
• Demo application: can be anything (do your research) or your implementation
(recommended)
• Demo scenarios: intense load vs. normal load in MQTT broker
Project List – Mobile Protocols ( only for
NT131.M12.MMCL)
Massive MIMO in 5G: https://arxiv.org/pdf/1304.6690.pdf,
https://arxiv.org/pdf/1511.08689.pdf
Requirements (80% theory + 20% survey):
• Source-code/Protocol/Algorithm/Specification analysis:
• Specification/concept/algorithm of normal MIMO
• Specification/concept/algorithm of Massive MIMO
• Specification/concept/algorithm of Massive MIMO in 5G
• Give 3-4 well-known wireless/mobile technologies that adopted Massive MIMO.
• Some of the following criteria should be done:
• Do a survey/research about how many Massive MIMO implementation in real-world 5G
technologies

You might also like