Kohei Shiomoto, Ph.D
塩本 公平

Teaching

Dr. Shiomoto teaches Computer Networks, Cloud Computing, Network Algorithms, and Case Studies for undergraduate students, and Advanced Communication Networks for graduate students. He supervises research for graduation theses, master's theses, and doctoral dissertations. He is a class mentor for undergraduate students and is responsible for the education, career, and daily life of undergraduate students.

Computer Network

Computer networking is an indispensable technology required in all fields as information technology advances. Computer network technology has evolved with the times and will continue to do so. It will continue to evolve in the future. It is of course important to acquire knowledge of computer network technology, but it is even more important to understand its principles. The lectures are designed to help students acquire knowledge while understanding the essence of computers and networks. Students will learn the structure of computer networks with the Internet as the main subject.Students will learn the structure of computer networks with the Internet as the main subject. Students will learn the structure of computer networks with the Internet as the main subject. By learning the principles of architecture, protocols, and layer structures, students will develop the ability to master the most advanced technologies that are constantly evolving by themselves. Practical training (creation of a simple Web server by socket programming, protocol analysis by packet capture) is also included to deepen understanding and cultivate practical skills through hands-on experience of what students have learned in the lectures.

Cloud Computing

Acquire the basic concepts of cloud computing (computing, networking, storage). Acquire the ability to master new cloud computing technologies that evolve daily based on the basic concepts. Acquire the basic knowledge, concepts, and abilities to understand the issues of cloud computing that evolve daily, to produce new methods, and to evaluate the effectiveness of these methods. Understand the basic concepts of cloud computing (computing, networking, and storage) and be able to explain cloud computing in writing based on an understanding of these concepts. Based on the acquired knowledge, master the construction and operation of virtualization environments and the construction and operation of Linux operating system environments.

Network Algorithms

Queueing theory is a theory for considering how long people should wait in line at a bank ATM, or at a bus stop waiting for a bus, etc., and how to reduce the waiting time. Queueing theory can be used to evaluate the performance of systems such as the Internet, mobile, and cloud computing. The ability to capture the essence of complex systems, model them, and evaluate their performance is a skill that is necessary after entering the workforce. The lecture is designed to help students acquire the ability to grasp the essence of a system and evaluate its performance using theoretical analysis and simulation, as well as the ability to design a network that meets the requirements by formulating a problem-specific formulation. The ability to evaluate the performance of computer networks, computers, and other systems, which are advancing day by day, and to use them appropriately, is an essential skill now and in the future. Students learn stochastic process modeling methods and queueing theory necessary to evaluate performance indices such as system throughput, latency, and packet loss. Students master formulation methods based on network flow problems, mathematical programming, and various algorithms necessary to design networks that satisfy desired requirements. Acquire the knowledge, thinking, and abilities necessary to understand the issues involved in the design and operation of computer networks and computer systems, to devise innovative methods for solving these issues, and to evaluate the effectiveness of these methods. Students will be able to explain probability distributions such as Poisson, exponential, and Erlang distributions, to calculate expected value, variance value, etc. from probability distributions, to explain what queueing theory is, to calculate average waiting time, average processing time, etc. for a basic queueing system, and to understand the algorithm for finding the shortest path in a network.