Lecture 1 - HTML Flashcards

1
Q

Characteristics of Circuit-Switched Networks

A
  • Constant Bandwidth: The circuit provides a fixed amount of bandwidth, which remains constant for the duration of the connection.
  • Latency: The dedicated nature of the circuit ensures low and predictable latency, as the path does not change during the call.
  • Resource Allocation: Resources (such as bandwidth) are allocated for the entire duration of the connection, even if no data is being transmitted (e.g., periods of silence during a phone call).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Circuit Switched Networks - Circuit Establishment

A
  • Dedicated Path: In a circuit-switched network, a dedicated communication path is established between the caller and the receiver for the duration of the call. This path is exclusively reserved, ensuring a consistent and continuous connection.
  • End-to-End Connection: Once the circuit is established, the connection remains active and dedicated until the call is terminated.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Circuit - Switched Networks - Manual Switching

A
  • Operators: Telephone calls were initially routed through human operators. When a person wanted to make a call, they would pick up the phone and speak to an operator. The operator would then connect the caller and the receiver by physically plugging a wire into a switchboard to complete the circuit.
  • Switchboards: These were large panels with numerous jacks and plugs that operators used to connect calls manually.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Evolution of Circuit Switching

A

1. Automated Switching:

  • Electromechanical Switches: Over time, manual switchboards were replaced with electromechanical switches, which automated the process of establishing circuits without human intervention.
  • Digital Switching: Eventually, digital switches further enhanced the efficiency and capacity of circuit-switched networks.

2. Transition to Packet Switching:

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Circuit - Switched Networks - Limitations

A
  • Inefficiency: Circuit-switched networks can be inefficient, especially when the connection is not continuously used (e.g., pauses in conversation). The reserved resources cannot be used by other users.
  • Scalability: As the number of users increases, the network must accommodate a growing number of dedicated circuits, which can lead to scalability issues.
  • Bandwidth Constraints: Limited bandwidth resources can become a bottleneck, especially with a large number of simultaneous connections.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Packet-Switched Networks

A
  • Modern networking has largely moved to packet-switching, where data is broken into packets and routed over shared networks.
  • This approach is more efficient and scalable, allowing multiple users to share the same network resources dynamically.
  • Does not require a continuous connection.
  • 1981 TCP/IP was introduced to unify disparate networks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Web App vs Desktop App - Accessiblity

A
  1. Can be accessed from any internet enabled device
  2. Typically need to be installed on each deviice
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Web App vs Desktop App - Cross Platform

A
  1. Compatible with different operating systems and browsers
  2. Often specific to one OS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Web App vs Desktop App - Ease of Updates

A
  1. Easier to roll out updates ince only server-side needs updating
  2. Updates need to be installed locally
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Web App vs Desktop App - Storage

A
  1. Centralised storage on the server, reducing local storage needs
  2. Data is usually stored locally on each device
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Web App vs Desktop App - Internet Dep.

A
  1. Requires an active internet connection
  2. Can often be used offline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Web App vs Desktop App - Security Concerns

A
  1. Risks with transmitting sensitive data over the internet
  2. Reduces transmission risk, due to locality
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Web App vs Desktop App - Data Control

A
  1. Concerns over the storage and use of uploaded data
  2. Users typically have more control over their data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Web App vs Desktop App - Cross-Browser Compatibilty

A
  1. Websites may not render identically across all browsers
  2. Appearance and functionality usually consistent across platforms
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Web App vs Desktop App - Installation Restrictions

A
  1. Limited ability to install software or access hardware directly
  2. Full access to system resources and hardware
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Web App vs Desktop App - Plugin Interference

A
  1. Additional browser plugins may interfere with JS
  2. Less affected by browser specific issues
17
Q

Dynamic vs Static Website

A
  • A static website consists of fixed content that remains the same unless manually updated.
  • It is simpler to design and develop, offers faster loading times, and is easier and cheaper to maintain.
  • Static websites typically use HTML, CSS, and sometimes JavaScript, making them ideal for small websites like portfolios or informational sites.
  • A dynamic website features content that can change dynamically based on user interactions or other factors.
  • These sites are more complex, requiring backend scripting, databases, and regular maintenance.
  • They are highly interactive, offering personalised user experiences, and are scalable to handle large amounts of data and users.
  • Dynamic websites often use server-side languages (e.g., PHP, Python), databases (e.g., MySQL), and client-side scripting, making them suitable for complex applications like e-commerce, social networks, and blogs.
18
Q

Features of Web 2.0

A
  • User-Generated Content: Platforms like blogs, social media, and wikis (e.g., YouTube, Wikipedia).
  • Rich User Experiences: Interactive interfaces using AJAX (e.g., Google Maps, Gmail).
  • Social Networking: Facilitates user connections (e.g., Facebook, Twitter).
  • Collaborative Tools: Enable shared projects (e.g., Google Docs, Trello).
  • Tagging: User-driven content organisation (e.g., Flickr, Delicious).
  • Web Applications: Browser-based apps with desktop-like functionality.
  • APIs and Mashups: Integration of data and functionality from multiple sources (e.g., Google Maps API).
19
Q

Client-Server Model

A

Client Machines:

  • Types: Desktops, laptops, smartphones, tablets.
  • Specifications: Vary widely in processing speed, screen size, available memory, and storage.

Server Machines:

  • Functions: Host web applications, store user and program data, perform security authorization tasks.
  • Capabilities: Powerful machines designed to handle high traffic and bandwidth.
  • Key Feature: Continuously listen for requests from clients and respond with appropriate messages.
20
Q

TCP/IP

A
  • TCP/IP (Transmission Control Protocol/Internet Protocol) is essential for internet communication.
  • Implemented in every operating system, it facilitates fast web development.
  • Web developers don’t need to manage details like packet routing, transmission, domain resolution, or checksums.
  • This abstraction allows developers to focus on building websites and applications.
21
Q

Link Layer

A
  • The link layer is the lowest layer, responsible for both the physical transmission of data across media and establishing logical links.
  • It handles issues like packet creation, transmission, reception, error detection, collisions, line sharing, and more.
  • One term that is sometimes used in the Internet context is that of MAC (media access control) addresses.
22
Q

Internet Layer

A
  • The Internet layer (sometimes also called the IP Layer) routes packets between communication partners across networks.
  • It provides “best effort” communication. It sends out a message to its destination but expects no reply and provides no guarantee the message will arrive intact, or at all.
  • The Internet uses the Internet Protocol (IP) addresses, which are numeric codes that uniquely identify destinations on the Internet.
  • Every device connected to the Internet has such an IP addresses
23
Q

Port Adress Translation

A
  • The IPv4 address space was depleted in 2011, but the number of computers connected to the Internet continued to grow.
  • Port Address Translation (PAT), allows multiple, unrelated networks to make use of the same IP address
  • When you join a wireless network in a coffee shop, home, office or university, it is quite likely you are making use of PAT.
  • For future growth, IPv6 will be necessary
24
Q

Transport Layer

A
  • The transport layer ensures transmissions arrive in order and without error.
  • First, the data is broken into packets formatted according to the Transmission Control Protocol (TCP).
    • Each data packet has a header that includes a sequence number, so the receiver can put the original message back in order
    • Each packet acknowledges its successful arrival back to the sender (ACK).
  • In the event of a lost packet (since no ACK arrived for that packet the packet will be retransmitted.
  • This means you have a guarantee that messages sent will arrive and will be in order.
    • In the event of a lost packet (since no ACK arrived for that packet the packet will be retransmitted.
  • This means you have a guarantee that messages sent will arrive and will be in order.
25
Q

Application Layer

A

The application layer is where protocols familiar to most web developers operate. These protocols implement process-to-process communication and are essential for various web functionalities.

Key protocols include:

  • HTTP (Hypertext Transfer Protocol): Used for web communication.
  • SSH (Secure Shell Protocol): Allows remote command-line connections to servers.
  • FTP (File Transfer Protocol): Used for transferring files between computers.
  • POP/IMAP/SMTP: Email-related protocols for transferring and storing email.
  • DNS (Domain Name System): Resolves domain names to IP addresses.
26
Q

Domain Name System (DNS)

A
  • DNS allows users to access websites using easy-to-remember domain names instead of numeric IP addresses.
  • The DNS system maps resolves domain names to IP addresses.
  • By separating the domain name of a server from its IP address, a site can move to a different host without changing its name.
27
Q

Registration Process for Domain

A
  1. The registrant searches for a domain via a registrar’s portal.
  2. The registrar checks the domain’s availability with the relevant TLD registry.
  3. If available, the registrant pays and provides WHOIS information.
  4. The registrar sends WHOIS information to the TLD registry operator.
  5. The TLD registry operator adds the WHOIS information to its list.
  6. The registry operator updates its name servers with the DNS information for the new domain.
28
Q

Address Resolution

A
  1. A client requests a domain.
  2. The client computer checks its local DNS cache.
  3. If not found, it requests the IP address from its primary DNS server.
  4. If the primary DNS server lacks the record, it queries the Root Name Server.
  5. The Root Name Server returns the address of the relevant TLD Server.
  6. The DNS server requests the DNS record from the TLD Server.
  7. The TLD Server returns the IP addresses of the Authoritative DNS Servers.
  8. The DNS server requests the IP address from the Authoritative DNS Server.
  9. The DNS server returns the IP address to the client computer.
  10. The client computer can then make its request to the domain.
29
Q

Response Codes

A
  • 2## codes are for successful responses,
  • 3## are for redirection-related responses,
  • 4## codes are client errors, while
  • 5## codes are server errors.
30
Q

LAMP Stack

A
  • Linux operating system
  • Apache web server
  • MySQL database
  • PHP scripting language
31
Q

MERN Stack

A

MongoDB database
Exoress application framewirj
JavaScript React framework
Node.js