Networking and Internet 1. Network Fundamentals - Network Classifications: Scope: o Personal Area Network (PAN) o Local Area Network (LAN) o Metropolitan area (MAN) o Wide Area Network (WAN) o Internet - Network topology: bus and star - Protocols: A set of rules that defines how data is formatted and processed on a network: CSMA/CD ( Used in Ethernet); CSMA/CA (Used in Wifi) - Open system: A system that based on a common model of network architecture and an accompanying suite of protocols - Proprietary system: A system that uses technologies kept private by a particular commercial vendor. - Interoperability: The ability of software and hardware on multiple machines and from multiple commercial vendors to communicate. Client/Server: One server + many clients, Serve must execute continuously, Client initiates communication. Server: be prepared to serve multiple clinets at any time (P2P): Peers communicate as equals on a one-to-one basis: two processes communicating as equals. Peer processes can be short-lived. - Connecting Networks o Repeater: Extends a network o Bridge: Connect two compatible networks o Switch: Connect several compartible networks o Router: Connect two incompartible networks resulting in a network of networks called an Internet. - Wireless and mobile connection: Bluetooth, Zigbee, RFID, 3G/4G/5G 2. The Internet: An internet that spans the world. - Original goal: to develop a means of connecting networks that would not be disrupted by local disaster. - Today: A commercial undertaking that links a worldwide combination of PANs, LANs, MANs and WANs involving millions of computers. - Test with tracert, ping commands - Internet Architecture: o Internet Service Provider (ISP): Tier-1, Tier-2 o Acess or Tier-3 ISP: Provides connectivity to the Internet: Hotpot (Wireless), Telephone lines, Cable/Satellite systems DSL, Fiber optics. - Internet Addressing: IP Address: (32bits or 128 bits): represented in dotted decimal notation. o Mnemonic address: Domain names + Top-Level Domains o Domain name system (DNS): Name servers + DNS lookup - Internet Corporation for Assigned Names & Numbers (ICANN): o Allocates IP Addresses to ISPs who then assign those addresses within their region. o Oversees the registration of domains and domain names - Early Internet Applications o Network News Transfer Protocol (NNTP) o File Transfer Protocol (FTP) o Telnet and SSH o Hypertext Transfer Protocol (HTTP) o Electronic Mail (email): Domain mail server collects incoming mail and transmits outing mail. Mail server delivers collected incoming mail to clients via POP3 or IMAP. - More Recent Applications o Voice Over IP (VoIP) o Internet Multimedia Streaming: Unicast, Multicast, On-demand streaming, Content delivery networks (CDNs) 3. The World Wide Web Hypertext: Combines internet technology with concept of linked-documents. (Embeds Hyperlinks to other documents) Browsers: present materials to the user Webservers: provide access to documents ( identified by URLs and transferred using HTTP) Hypertext Markup Language (HTML) Encoded as text file Contains tags to communicate with browser o Appearance: <h1> to start a level one heading <p> to start a new paragraph o Links to other documents and content <a href = …> o Insert images <img src = …> - A simple webpage: Extensible Markup Language (XML) XML: A language for constructing markup languages for similar to HTML A descendant of SGML Opens door to a World Wide Semantic Web 4. Internet Protocols Internet Software Layers Application: Constructs message with address Transport: Chops message into packets Network: Handles routing through the Internet Link: Handles actual transmission of packets TCP/IP Protocol Suite Transport Layer Transmission Control Protocol (TCP): More ‘reliable’ but less efficient User Datagram Protocol (UDP): More ‘efficient’ but less ‘reliable’ Network Layer Internet Protocol: IPv4, IPv5 5. Security a. Attack: o Malware (viruses, worms, Trojan horses, spyware, phishing software) o Deniel of service (DoS) o Spam b. Protection: o Firewalls o Spam Filters o Proxy Servers o Antivirus software Encryption HTTPS and SSL Public – Key Encryption: Public Key: Used to encrypt messages Private Key: Used to decrypt messages Certificates and Digital Signatures OPERATING SYSTEM 1. Operating System Roles: Application Software: solve real-world problems System software: manage a computer system and interact with Hardware Operating system: System software that manages computer resources and provides and interface for system interaction. Software Classification: Software : Application System: Unity Operating System: User Interface + Kernel Operating System Components User Interface: Communicates with users Text based (Shell) (Bourne shell, Bash shell, C shell, Korn shell) Graphical User Interface (GUI) (GNOME, KDE, Unity) Kernel : Performs baic function: File manager, Device drivers, Memory manager, Scheduler and dispatcher. Memory, Process and CPU Management Multiprogramming: The technique of keeping multiple programs in main memory at the same time, competing for the CPU Memory management: The act of keeping track of how and where programs are loaded in main memory. Process: The dynamic representation of a program during execution Process management: The act of keeping track of information for active process CPU scheduling: The act of determining which process in memory is given access to the CPU so that it may execute. 2. Memory Management Logical Address: A reference to a stored value relative to the program making the reference Physical Address: An actual address in the main memory device. Process Management – Process states In the new state, a process is being created. A process that has no barries to its execution is in the ready state. A process in the running state is currently being executed by the CPU. Its instructions are being processed in the fetch – execute cycle. A process in the waiting state is currently waiting for resources (other than the CPU) A process in the terminated state has completed its execution and is no longer active. CPU Scheduling: The act of determining which process in the ready state should be moved to the running state. First Come, First Served (FCFS): non-preemptive Shortest Job Next: Non- preemptive Round Robin: time slice, preemptive scheduling. 2. File System Directory File System: Main memory is where active programs and data are held while in use. A volatile memory. Secondary memory is nonvolatile – the date stored on it is maintained even when power is not on. File: Collection of data, used for organizing secondary memory. File system: The operating system ‘s logical view of the files it manage Directory: A named group of files. Directory Trees Directory tree: A structure showing the nested directory organization of the file system Root directory: The topmost directory, in which all others are contained. Path name: absolute vs relative File Operation: myFile = open(“new.txt”, “w+”): Open myFile.close() : Close import os os.remove(‘….’) : Delete os.rename(‘..’,’…’) Application Layer 1. Information Systems Managing Information: Information system: Software that helps the user organize and analyze date Three most popular applications of information systems: Electronic spreadsheets, Database management systems, E-commerce Spreadsheets: A program that allows the user to organize and analyze data using a grid of cells Cell: An element of a spreadsheet that can contain data or a formula Spreadsheet Formulas: A computation provided by the spreadsheet software that can be incorporated into formulas Spreadsheet Analysis: Track sales, Analyze sport statistic, Maintain student grades, Keep a car maintenance log, Record and summarize travel expenses, Track project activites and schedules, Plan stock purchases. Database Management Systems: Database: A structured set of data Database Management System (DBMS): A combination of software and data made up of Physical database: Collection of files that contain the data. Database engine: a software that supports access to and modification of the data contents. Database schema: a specification of the logical structure of the date stored in the database. Relational – Model DBMS: Relational model: A database model in which data and the relationships among them are organized into tables Table: A collection of database records Record (or object, or entity): A collection of related fields that make up a single database entry (rows) Field (or attribute): A single value in a database record (columns) Each movie record has: a MovieId,a Title, a Genre, and a Rating Key field: One or more fields of a database record that uniquely identifies it among all other records in the table, e.g., MovieId. Schema: Movie (MovieId:key,Title, Genre, Rating) Structured Query Language (SQL): A comprehensive relational database language for data management and queries 2. Artificial intelligence 3. Simulation, graphics, gaming and other applications. Slide 1239