Skip to content

Computer Systems and Networks

AP Computer Science Principles · Topic 4

Train
4.1

The Internet

Syllabus
Enduring UnderstandingLearning ObjectiveEssential Knowledge

CSN-1
Computer systems and networks facilitate the transfer of data.

CSN-1.A
Explain how computing devices work together in a network. [Skill 5.A]

  • CSN-1.A.1 A computing device is a physical artifact that can run a program. Some examples include computers, tablets, servers, routers, and smart sensors.
  • CSN-1.A.2 A computing system is a group of computing devices and programs working together for a common purpose.
  • CSN-1.A.3 A computer network is a group of interconnected computing devices capable of sending or receiving data.
  • CSN-1.A.4 A computer network is a type of computing system.
  • CSN-1.A.5 A path between two computing devices on a computer network (a sender and a receiver) is a sequence of directly connected computing devices that begins at the sender and ends at the receiver.
  • CSN-1.A.6 Routing is the process of finding a path from sender to receiver.
  • CSN-1.A.7 The bandwidth of a computer network is the maximum amount of data that can be sent in a fixed amount of time.
  • CSN-1.A.8 Bandwidth is usually measured in bits per second.

CSN-1.B
Explain how the Internet works. [Skill 5.A]

  • CSN-1.B.1 The Internet is a computer network consisting of interconnected networks that use standardized, open (nonproprietary) communication protocols.
  • CSN-1.B.2 Access to the Internet depends on the ability to connect a computing device to an Internet-connected device.
  • CSN-1.B.3 A protocol is an agreed-upon set of rules that specify the behavior of a system.
  • CSN-1.B.4 The protocols used in the Internet are open, which allows users to easily connect additional computing devices to the Internet.
  • CSN-1.B.5 Routing on the Internet is usually dynamic; it is not specified in advance.
  • CSN-1.B.6 The scalability of a system is the capacity for the system to change in size and scale to meet new demands.
  • CSN-1.B.7 The Internet was designed to be scalable.

CSN-1.C
Explain how data are sent through the Internet via packets. [Skill 5.A]

  • CSN-1.C.1 Information is passed through the Internet as a data stream. Data streams contain chunks of data, which are encapsulated in packets.
  • CSN-1.C.2 Packets contain a chunk of data and metadata used for routing the packet between the origin and the destination on the Internet, as well as for data reassembly.
  • CSN-1.C.3 Packets may arrive at the destination in order, out of order, or not at all.
  • CSN-1.C.4 IP, TCP, and UDP are common protocols used on the Internet.

CSN-1.D
Describe the differences between the Internet and the World Wide Web. [Skill 5.A]

  • CSN-1.D.1 The World Wide Web is a system of linked pages, programs, and files.
  • CSN-1.D.2 HTTP is a protocol used by the World Wide Web.
  • CSN-1.D.3 The World Wide Web uses the Internet.

Source: College Board AP Course and Exam Description

The Internet 互联网 is a global network of networks. Data travels as packets 数据包 – small chunks that are sent separately and reassembled at the destination. Two ideas make it work at scale:

The internet is the worldwide network; the web is one service running on it The internet is the worldwide network; the web is one service running on it

  • Protocols 协议 are agreed rules for communication. IP (Internet Protocol) addresses and routes packets; TCP reassembles them in order and re-requests lost ones; HTTP carries web pages; DNS translates a name like example.com into an IP address.
  • Redundancy 冗余 and routing: there are many possible paths between two points, so if one path fails, packets take another. This makes the Internet fault-tolerant 容错.

The Internet is designed to be open and scalable – built on standards anyone can use, so it keeps working as billions of devices join. Bandwidth 带宽 is the amount of data a connection can carry per second.

Explore

How data crosses the Internet in packets

The Internet breaks a message into numbered packets, each addressed and routed independently (often by different paths), then reassembled at the destination. That design makes it fault-tolerant — if one route fails, packets take another.

Vocabulary Train
English Chinese Pinyin
Internet 互联网 hù lián wǎng
packets 数据包 shù jù bāo
Protocols 协议 xié yì
Redundancy 冗余 rǒng yú
fault-tolerant 容错 róng cuò
Bandwidth 带宽 dài kuān
4.2

Fault Tolerance

Syllabus
Enduring UnderstandingLearning ObjectiveEssential Knowledge

CSN-1
Computer systems and networks facilitate the transfer of data.

CSN-1.E
For fault-tolerant systems, like the Internet:
a. Describe the benefits of fault tolerance. [Skill 1.D]
b. Explain how a given system is fault-tolerant. [Skill 5.A]
c. Identify vulnerabilities to failure in a system. [Skill 1.D]

  • CSN-1.E.1 The Internet has been engineered to be fault-tolerant, with abstractions for routing and transmitting data.
  • CSN-1.E.2 Redundancy is the inclusion of extra components that can be used to mitigate failure of a system if other components fail.
  • CSN-1.E.3 One way to accomplish network redundancy is by having more than one path between any two connected devices.
  • CSN-1.E.4 If a particular device or connection on the Internet fails, subsequent data will be sent via a different route, if possible.
  • CSN-1.E.5 When a system can support failures and still continue to function, it is called fault-tolerant. This is important because elements of complex systems fail at unexpected times, often in groups, and fault tolerance allows users to continue to use the network.
  • CSN-1.E.6 Redundancy within a system often requires additional resources but can provide the benefit of fault tolerance.
  • CSN-1.E.7 The redundancy of routing options between two points increases the reliability of the Internet and helps it scale to more devices and more people.

Source: College Board AP Course and Exam Description

A system is fault-tolerant if it keeps working even when part of it fails. The Internet achieves this through redundant connections: because packets can be routed along multiple paths, the failure of one router or cable does not stop communication – traffic simply reroutes. Fault tolerance costs extra resources (the redundant paths) but greatly improves reliability 可靠性. A single path with no backup is not fault-tolerant.

Packet switching sends packets by independent routes, so the network tolerates a failed link Packet switching sends packets by independent routes, so the network tolerates a failed link

Vocabulary Train
English Chinese Pinyin
reliability 可靠性 kě kào xìng
4.3

Parallel and Distributed Computing

Syllabus
Enduring UnderstandingLearning ObjectiveEssential Knowledge

CSN-2
Parallel and distributed computing leverage multiple computers to more quickly solve complex problems or process large data sets.

CSN-2.A
For sequential, parallel, and distributed computing:
a. Compare problem solutions. [Skill 1.D]
b. Determine the efficiency of solutions. [Skill 1.D]

  • CSN-2.A.1 Sequential computing is a computational model in which operations are performed in order one at a time.
  • CSN-2.A.2 Parallel computing is a computational model where the program is broken into multiple smaller sequential computing operations, some of which are performed simultaneously.
  • CSN-2.A.3 Distributed computing is a computational model in which multiple devices are used to run a program.
  • CSN-2.A.4 Comparing efficiency of solutions can be done by comparing the time it takes them to perform the same task.
  • CSN-2.A.5 A sequential solution takes as long as the sum of all of its steps.
  • CSN-2.A.6 A parallel computing solution takes as long as its sequential tasks plus the longest of its parallel tasks.
  • CSN-2.A.7 The "speedup" of a parallel solution is measured in the time it took to complete the task sequentially divided by the time it took to complete the task when done in parallel.

CSN-2.B
Describe benefits and challenges of parallel and distributed computing. [Skill 1.D]

  • CSN-2.B.1 Parallel computing consists of a parallel portion and a sequential portion.
  • CSN-2.B.2 Solutions that use parallel computing can scale more effectively than solutions that use sequential computing.
  • CSN-2.B.3 Distributed computing allows problems to be solved that could not be solved on a single computer because of either the processing time or storage needs involved.
  • CSN-2.B.4 Distributed computing allows much larger problems to be solved quicker than they could be solved using a single computer.
  • CSN-2.B.5 When increasing the use of parallel computing in a solution, the efficiency of the solution is still limited by the sequential portion. This means that at some point, adding parallel portions will no longer meaningfully increase efficiency.

Source: College Board AP Course and Exam Description

  • Sequential computing 顺序计算 runs one operation at a time.
  • Parallel computing 并行计算 splits a task into parts that run at the same time on multiple processors, finishing faster.
  • Distributed computing 分布式计算 uses many computers connected by a network to work on one problem – essential for problems too big for a single machine.

Parallel computing: many processors work at the same time Parallel computing: many processors work at the same time

A parallel solution's speedup 加速比 is the sequential time divided by the parallel time. Speedup is limited: parts that must run in sequence cannot be sped up by adding processors, so doubling the processors rarely doubles the speed.

Worked example. A task has a part that must run sequentially, taking $40$ seconds, plus a parallelizable part that takes $60$ seconds on one processor – so on a single processor the whole task takes $40+60=100$ seconds. Spread the parallel part across $3$ processors and it takes $\tfrac{60}{3}=20$ seconds, so the total parallel time is $40+20=60$ seconds and the speedup is $\tfrac{100}{60}\approx1.67$. The $40$-second sequential part is a floor: even with infinitely many processors the task can never finish in under $40$ seconds.

Exam skill: given the times for the sequential and parallel portions of a task, be able to calculate the total parallel time and the speedup.

Vocabulary Train
English Chinese Pinyin
Sequential computing 顺序计算 shùn xù jì suàn
Parallel computing 并行计算 bìng xíng jì suàn
Distributed computing 分布式计算 fēn bù shì jì suàn
speedup 加速比 jiā sù bǐ
4.3

Exam tips

  • Describe how data travels in packets over a redundant, fault-tolerant network of independent routers.
  • Know that protocols (IP, TCP, HTTP) are agreed rules, and that open standards let different systems interoperate.
  • Explain scalability and how the Internet grows without central control.
  • Contrast bandwidth (rate) with latency (delay), and describe the DNS name-to-address lookup.
  • Discuss the digital divide and security basics (encryption, authentication) in plain terms.

Log in or create account

IGCSE & A-Level