ITM Operations (ITMO)
This course covers current and evolving data network technologies, protocols, network components, and the networks that use them, focusing on the Internet and related LANs. The state of worldwide networking and its evolution will be discussed. This course covers the Internet architecture, organization, and protocols including Ethernet, 802.11, routing, the TCP/UDP/IP suite, DNS, SNMP, DHCP, and more. Students will be presented with Internet-specific networking tools for searching, testing, debugging, and configuring networks and network-connected host computers. There will be opportunities for network configuration and hands-on use of tools.
Students learn to set up and configure an industry-standard open source operating system including system installation and basic system administration; system architecture; package management; command-line commands; devices, filesystems, and the filesystem hierarchy standard. Also addressed are applications, shells, scripting and data management; user interfaces and desktops; administrative tasks; essential system services; networking fundamentals; and security, as well as support issues for open source software. Multiple distributions are covered with emphasis on the two leading major distribution forks.
Focuses on preparation of shell scripts to enhance and streamline system administration tasks in all contemporary server operating systems. Scripting will be taught in both native and portable environments. The course will address shell programming, regular expressions, common and system-specific shell utilities and built-in commands, user defined and shell variables, flow control structures, shell functions, and the creation and execution of shell scripts. Homework and hands-on exercises will provide practical experience in contemporary server environments. Same as ITMO 517.
Students learn to set up, maintain, and administer X86-based servers and associated networks using a contemporary industry-standard proprietary operating system. Topics include hardware requirements; software compatibility; system installation, configuration and options, and post-installation topics; administrative and technical practices required for system security; process management; performance monitoring and tuning; storage management; back-up and restoration of data; and disaster recovery and prevention. Also addressed is configuration and administration of common network and server services such as DNS, DHCP, remote access, email, basic virtualization, web and web services, and more.
Students learn the details, use, and configuration of network applications. Currently protocols and application technologies considered include SNMP, SMTP, IMAP, POP, MIME, BOOTP, DHCP, SAMBA, NFS, AFS, X, HTTP, DNS, NetBIOS, and CIFS/SMB. Windows workgroups and domains: file and printer sharing, remote access, and Windows networking are addressed. A research paper in the above topic areas is required.
Computing applications hosted on dynamically-scaled virtual resources available as services are considered. Collaborative and non-collaborative "cloud-resident" applications are analyzed with respect to cost, device/location independence, scalability, reliability, security, and sustainability. Commercial and local cloud architectures are examined. A group-based integration of course topics will result in a project employing various cloud computing technologies.
This course covers a suite of application protocols known as Voice over IP (VoIP). It covers key protocols within that suite, including Session Initiation Protocol (SIP), Real-time Transport Protocol (RTP) and Session Description Protocol (SDP) as well as the architectures of various VoIP installations including on-net to on-net; on-net to PSTN; and inter-domain scenarios. The functions of the Network Elements in these architectures are defined and examples of products that include these network elements are examined. Contrast with circuit-switched and web-based communications systems is provided.
Students learn to set up, configure, and maintain end-user desktop and portable computers and devices in an enterprise environment using a contemporary proprietary operating system, including the actual installation of the operating system in a networked client-server environment. User account management, security, printing, disk configuration, and backup procedures are addressed with particular attention to coverage of networked applications. System installation, configuration, and administration issues as well as network file systems, network access, and compatibility with other operating systems are also addressed. Administration of central server resources associated with management and provisioning of end-user systems in workgroups, domains, or forests is also addressed.
Students learn the administration topics and concepts of IT orchestration, automation, monitoring, and metric collection. Topics include configuring industry standard automation tooling and using scripting to achieve immutable infrastructure. Students will learn how to monitor and collect and present metrics in regards to the infrastructure they deploy.
This course will cover technologies allowing multiple instances of operating systems to be run on a single physical system. Concepts addressed will include hypervisors, virtual machines, paravirtualization and virtual appliances. Both server and desktop virtualization will be examined in detail, with brief coverage of storage virtualization and application virtualization. Business benefits, business cases and security implications of virtualization will be discussed. Extensive hands-on assignments and a group project will allow students to gain first-hand experience of this technology.
Software as a Service (SaaS) allows consumers to use a provider’s applications running on a cloud infrastructure, accessible from client devices over a network through either a thin client interface, such as a web browser, or a program interface. Stu-dents will explore different approaches, techniques, tools and technologies to build, deploy, and manage cloud native applications.
Platform as a Service (PaaS) allows developers to deploy onto the cloud infrastructure developer-created or acquired applications created using programming languages, libraries, services, and tools supported by the cloud provider. Students learn to develop applications and services using popular platforms and service tools, and to manage deployed applications as well as configuration settings for the applica-tion-hosting environment.
Infrastructure as a Service (SaaS) allows users to provision processing, storage, networks, and other fundamental computing resources which then allows them to deploy and run arbitrary software, which can include operating systems and applications. Students will learn how to provision, deploy and manage operating systems, storage, and deployed applications as well as virtual networking components such as switches, routers, and firewalls in a cloud environment accessible remotely through a network.