0% found this document useful (0 votes)
67 views53 pages

CS111 - Lecture Note 04

The document provides an overview of the topics covered in an introduction to computing course, including networking fundamentals, the internet, the world wide web, internet protocols, and security. Some key points discussed are network topologies like bus, star, and mesh networks; protocols for transmitting messages over networks like CSMA/CD and CSMA/CA; the layered architecture of the internet including IP addresses and domain name system; early internet applications like email, FTP, and telnet; the development of the world wide web using HTML and URLs; and client-side versus server-side activities on the web.

Uploaded by

Jaber Sangcopan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
67 views53 pages

CS111 - Lecture Note 04

The document provides an overview of the topics covered in an introduction to computing course, including networking fundamentals, the internet, the world wide web, internet protocols, and security. Some key points discussed are network topologies like bus, star, and mesh networks; protocols for transmitting messages over networks like CSMA/CD and CSMA/CA; the layered architecture of the internet including IP addresses and domain name system; early internet applications like email, FTP, and telnet; the development of the world wide web using HTML and URLs; and client-side versus server-side activities on the web.

Uploaded by

Jaber Sangcopan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

Introduction to

Computing
(CS111)
Junar A. Landicho

[email protected]

Often when you think
you're at the end of
something, you're at the
beginning of something
else.”

Fred Rogers
Topic 4:
Networking
and the
Internet
IT 416
Information Systems Development and Management
Learning Outcomes
By the end of this topic, students will be able to:
Explain the abstractions in the Internet and how the Internet
functions.
Explain characteristics of the Internet and the systems built on
it.
Explain how the characteristics of the Internet influence the
systems built on it.
Identify existing cybersecurity concerns and potential options to
address these issues with the Internet and the systems built on
it.

CS 111 – Introduction to Computing


Learning Outcomes
Explain how computing innovations affect communication,
interaction, and cognition.
Analyze the beneficial and harmful effects of computing.
Explain the connections between computing and real-world
contexts, including economic, social, and cultural contexts.

CS 111 – Introduction to Computing


Overview
1. Network Fundamentals
2. The Internet
3. The World Wide Web
4. Internet Protocols
5. Simple Client Server
6. Security

CS 111 – Introduction to Computing


Network Fundamentals

Python
Java

PHP

CS 111 – Introduction to Computing


Network Fundamentals

Network Software allows users to


exchange information and share
resources
▪ Content
▪ Software
▪ Data storage facilities
Network software has evolved into a
network-wide operating system

CS 111 – Introduction to Computing


Network Classifications
Scope
▪ Personal Area Network (short-range)
▪ Local Area Network (building/campus)
▪ Metropolitan Area Network (community)
▪ Wide Area Network (greater distances)
Ownership
▪ Closed versus open
Topology (configuration)
▪ Bus (Ethernet)
▪ Star (Wireless networks with central Access
Point)

CS 111 – Introduction to Computing


Popular Network Topologies

CS 111 – Introduction to Computing


Protocols
Rules by which activities are
conducted on a network
▪ Example: Coordinating the transmission
of messages between computers. Need
to avoid all machines transmitting at the
same time.
Allows vendors to build products that
are compatible with products from
other vendors

CS 111 – Introduction to Computing


Protocols for Transmitting Messages
CSMA/Collision Detection
▪ used in Ethernet
▪ both machines stop and wait for a
independent, random time
CSMA/Collision Avoidance
▪ used in WiFi, where not all machines can
hear each other (hidden terminal
problem)
▪ give advantage to the machine that has
already been waiting

CS 111 – Introduction to Computing


Communication over a Bus Network

CS 111 – Introduction to Computing


The hidden terminal problem

CS 111 – Introduction to Computing


Combining Networks
Repeater: passes all messages across
two busses
Bridge: passes only messages that are
destined for computers on the other
bus
Switch: acts like a bridge, but with
connections to multiple busses
Router: Connects two incompatible
networks resulting in a network of
networks called an internet

CS 111 – Introduction to Computing


Combining Networks

Routers connecting two WiFi


networks and an Ethernet
network to form an internet

CS 111 – Introduction to Computing


Methods of Process Communication
Client-server
▪ Many clients, one server (executing
continuously)
▪ Clients make requests of other
processes
▪ Server satisfies requests made by clients
Peer-to-peer (P2P)
▪ Two processes communicating as
equals
▪ Processes execute on a temporary basis

CS 111 – Introduction to Computing


Distributed Systems
Systems units that execute as
processes on different computers
Cluster computing
▪ Independent computers work closely
together instead of a single, much larger
machine
Grid computing
▪ Millions of home PCs (not connected to
each other) work on a complex problem
Cloud computing
▪ Provide services, hide the details
CS 111 – Introduction to Computing
The Internet

Python
Java

PHP

CS 111 – Introduction to Computing


The Internet
The Internet is an internet that spans
the world
Original goal was to link a variety of
networks into a connected system
unaffected by local disasters
Today, it is a commercial undertaking
that links a worldwide combination of
PANs, LANs, MANs, and WANs
involving millions of computers

CS 111 – Introduction to Computing


Internet Architecture
Internet Service Provider (ISP)
▪ Tier-1 (Internet backbone)
▪ Tier-2
Access or Tier-3 ISP: Provides
connectivity to the Internet
▪ Hot spot (wireless)
▪ Telephone lines
▪ Cellular
▪ Cable/Satellite systems

CS 111 – Introduction to Computing


Internet Composition

CS 111 – Introduction to Computing


The Internet
IP address: pattern of 32 or 128 bits
often represented in dotted decimal
notation
Mnemonic address:
▪ Domain names (mu.edu)
▪ Top-Level Domains (.org, .gov, .com, .mil,
.net, .au, .ca, .biz, ….)
Domain name system (DNS)
▪ Name servers
▪ DNS lookup

CS 111 – Introduction to Computing


Internet Corporation for Assigned
Names & Numbers (ICANN)

Allocates blocks of IP addresses to


ISPs who then assign those
addresses within their regions.
Oversees the registration of domains
and domain names.

CS 111 – Introduction to Computing


Early Internet Applications
Network News Transfer Protocol
(NNTP)
File Transfer Protocol (FTP)
Telnet and Secure Shell (SSH)
Hypertext Transfer Protocol (HTTP)
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

CS 111 – Introduction to Computing


SMTP Simple Mail Transfer Protocol

CS 111 – Introduction to Computing


More Recent Applications
Voice Over IP (VoIP)
Internet Multimedia Streaming
▪ N-unicast
▪ Multicast
▪ On-demand streaming
▪ Content delivery networks (CDNs)

CS 111 – Introduction to Computing


World Wide Web

Python
Java

PHP

CS 111 – Introduction to Computing


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
Documents are identified by URLs
and transferred using HTTP
CS 111 – Introduction to Computing
A typical URL

CS 111 – Introduction to Computing


Hypertext Markup Language (HTML)
Encoded as text file
Contains tags to communicate with
browser
▪ Appearance
o <h1> to start a level one heading
o <p> to start a new paragraph
▪ Links to other documents and content
o <a href = . . . >
▪ Insert images
o <img src = . . . >

CS 111 – Introduction to Computing


A simple webpage

CS 111 – Introduction to Computing


An enhanced simple webpage

CS 111 – Introduction to Computing


Extensible Markup Language (XML)

XML: A language for constructing


markup languages similar to HTML
▪ A descendant of the Standard
Generalized Markup Language
▪ Opens door to a World Wide Semantic
Web

CS 111 – Introduction to Computing


Using XML to encode music
<staff clef = “treble”> <key>C minor</key>
<time> 2/4 </time>
<measure> < rest> egth </rest>
<notes> egth G, egth G, egth G </notes>
</measure>
<measure> <notes> hlf E </notes></measure>
</staff>

The first two bars of Beethoven’s Fifth Symphony

CS 111 – Introduction to Computing


Client Side Versus Server Side
Client-side activities (browser)
▪ Javascript
▪ Java applets
▪ Macromedia Flash
Server-side activities (webserver)
▪ Common Gateway Interface (CGI)
▪ Servlets
▪ JavaServer Pages (JSP) / Active Server
Pages (ASP)
▪ PHP

CS 111 – Introduction to Computing


Internet Protocols

Python
Java

PHP

CS 111 – Introduction to Computing


Internet Protocols

Control how messages are


transferred over the Internet
This software must reside on every
computer in the Internet
Accomplished by a multi-level
hierarchy

CS 111 – Introduction to Computing


Package-shipping example

CS 111 – Introduction to Computing


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

CS 111 – Introduction to Computing


Following a message through the
Internet

CS 111 – Introduction to Computing


TCP/IP Protocol Suite
Transport Layer
▪ Transmission Control Protocol (TCP)
▪ User Datagram Protocol (UDP)
Network Layer
▪ Internet Protocol (IP)
▪ IPv4
▪ IPv6

CS 111 – Introduction to Computing


Simple Client Server Program

Python
Java

PHP

CS 111 – Introduction to Computing


Simple Client Server Program
Socket: an abstraction for processes at
the application layer to connect to the
network via the transport layer
Needs to know
▪ Source Address name (localhost)
▪ Source Port number(1023…65535)
▪ Destination Address
▪ Destination Port number

CS 111 – Introduction to Computing


Client Script in Python

CS 111 – Introduction to Computing


Server Script in Python

CS 111 – Introduction to Computing


Cybersecurity

Python
Java

PHP

CS 111 – Introduction to Computing


Cybersecurity
Forms of Attack
▪ Malware (viruses, worms, Trojan
horses, spyware, phishing software)
▪ Denial of service (DoS)
▪ Spam (common medium for
delivering malware)
Protection and Cures
▪ Firewalls
▪ Spam filters
▪ Proxy Servers
▪ Antivirus software

CS 111 – Introduction to Computing


Cryptography
HTTPS for secure Internet access
Public-key Encryption (asymmetric)
▪ Public key: Used to encrypt messages
▪ Private key: Used to decrypt messages
Certificate Authorities
▪ Trusted to maintain lists of public keys
▪ Provide Certificates to clients containing
a party’s name and its public key

CS 111 – Introduction to Computing


Public key encryption

CS 111 – Introduction to Computing


Legal Approaches to Network Security
Computer Fraud and Abuse Act
Electronic Communication Privacy Act
USA PATRIOT Act
Communications Assistance for Law
Enforcement Act
Anticybersquatting Consumer
Protection Act

CS 111 – Introduction to Computing


CS 111 – Introduction to Computing
</End>

You might also like