CAIE AS and A Level CS revision - Unit 14 (2nd)

来自A level and IG Revision Wiki
跳到导航 跳到搜索

【点此返回复习要点目录】


如遇到公式加载异常,请刷新页面!

Unit 14 Communication and internet technologies 通信和互联网技术

14.1 Protocols 协议

  • 大纲要求

CAIE-CS2nd-14.1要求.png


14.1.1 Show understanding of why a protocol is essential for communication between computers 理解为什么协议对于计算机之间的通信至关重要

  • Protocol:协议,指数据传输中的各种rules规则。在数据传输中,发送方和接收方必须就协议达成一致,才能开始数据的传输。这些协议影响着数据的发送方式、传输速度、数据格式等,对数据传输至关重要。


14.1.2 Show understanding of how protocol implementation can be viewed as a stack, where each layer has its own functionality 了解如何将协议实现视为一个堆栈,其中每一层都有自己的功能

  • Protocol suite:协议组,指多个protocol协议的组合。协议组可以看成是这些单独协议堆起来的stack栈,每个单独的协议是栈中的一个layer层。这些layer层满足以下的特征:
    • 每层只能接受来自相邻的较高层或较低层的输入。
    • 相邻两层之间有一个定义的interface界面,是相邻两层之间唯一的交互处。
    • 一个层依赖于低层的活动。
    • 除最低层之外,层的功能由安装的软件实现。
    • 一个层可以包括sub-layer子层。
    • 任何用户的交互都是使用栈中最高层的协议而发生的。
    • 任何对硬件的直接访问都仅限于堆栈中的最低层。


14.1.3 Show understanding of the TCP / IP protocol suite 展示对 TCP/IP 协议套件的理解

Four Layers (Application, Transport, Internet, Link) 四层(应用、传输、互联网、链路)
Purpose and function of each layer 各层的目的和作用
Application when a message is sent from one host to another on the internet Internet 上消息从一台主机发送到另一台主机时的应用

  • OSI model(Open System Interconnection model):开放式系统互联模型,是关于网络通信的七层模型。(本章仅涉及其中的五层)每层的说明及示意图如下:
CAIE-CS2nd-14.1.3-1.png
    • Application layer:应用层,是与用户交互的应用程序所在的层级,向最终用户提供符合最终用户数据的网络服务或协议。比如浏览器、电子邮件等。
    • Transport layer:传输层,负责协调跨网络连接的数据传输,规范终端系统和主机之间数据传输所涉及的各种元素,对数据包进行有效的管理和错误检查。
    • Network layer:网络层,负责处理数据包转发,路由器有助于将数据引导到几个不同网络之间的最终目的地。
    • Data link layer:数据链路层,负责在物理网络上建立传输链路,节点到节点的数据传输由数据链路层中直接连接的节点执行。
    • Physical layer:物理层,是系统的物理和电气表示,由各种网络组件组成。比如电源插头、接收器、电缆等。


  • 各层的常见协议如下表所示:
协议
Application layer应用层 HTTP, SMTP, DNS, FTP, POP3, IMAP
Transport layer传输层 TCP, UDP, SCTP
Network layer网络层 IP, IGMP, ICMP, ARP


  • 信息传输过程:
    • 用户在applicationlayer应用层有传输数据的需求,向下传递给transportlayer传输层。
    • 传输层中最常见的协议是TCP(Transmission Control Protocol)传输控制协议,负责采取一些方式将数据安全地传输给接收方,并将系统的任何回应传输回应用层。
      • TCP的运行与作用:该协议会为应用层传输过来的数据创建足量的packets数据包,每个数据包中包含header标头和user data用户的数据内容。Header标头中会包含本方应用层协议端口号(用于将回应回传给应用层)、接收方应用层协议端口号(用于将数据送达对方应用层)、数据包序列号(用于接收方接收到全部数据包后进行排序和重组数据)等。
      • TCP协议是connection-oriented面向连接型的传输,最初会先发送一个数据包到网络层,如果从网络层收到传输线路连通的反馈,才会继续发送剩余的数据包,否则会隔一段时间再次尝试发送之前的数据包直到收到连通反馈。因此该协议支持识别和重新发送丢失的数据包。【参考14.2.2】
    • 传输层将数据包打包完毕后,会将数据向下传递给network layer网络层。
    • 网络层中最常见的协议是IP(Internet Protocol)互联网协议,负责确保网络传输的正确路线。
      • IP的运行与作用:该协议会在传输层传递来的数据包header标头中继续添加内容,包括发送方的IP地址和接收方的IP地址。使用IP协议封装好的数据包称为datagram数据报,这些数据报将被进一步传输到data-link layer数据链路层。
      • IP协议是connectionless service无连接服务的传输,数据发送后,IP并不知道它是否到达了目的地,即使收到了确认反馈,也仅仅是将反馈信息直接整体传递给传输层,而不去了解其中的具体内容。
    • 网络层将数据报打包完毕后,会将数据向下传递给data-link layer数据链路层。
    • 数据链路层收到数据报后,在数据的前后加上标志,将数据封装成frame帧,便于介质传输和识别。
      • Ethernet protocol stack以太网协议栈中的一部分协议用于数据链路层,比如Logical Link Control (LCC) 逻辑链路控制和Medium Access Control (MAC) 介质访问控制。
  • LCC协议负责数据链路层与网络层之间的数据传输,并确保数据的完整性。该协议属于connectionless service,只传输数据,不检查数据是否成功送达。
  • MAC协议负责将发来的数据封装成frame帧(包括发送方和下一站接收方设备的MAC物理地址),启动帧传输,修正传输时可能的错误,并恢复失败的传输。
    • 数据链路层将封装好的帧通过物理层的各类物理设施(比如通过电缆中的电信号等),将比特流传递给下一个接收方。
      • 物理层中常见的协议包括:
        • Physical Coding Sublayer (PCS):物理编码子层协议,负责对准备传输的数据进行编码或对接收到的数据进行解码。该协议会与数据链路层进行交互,接收或发送数据。
        • Physical Medium Attachment (PMA):物理介质连接协议,负责信号的发送和接收。
    • Ethernet以太网中的各子层协议示意图如下:
CAIE-CS2nd-14.1.3-2.png
    • 如果在传输过程中遇到router路由器,路由器会将数据包向上传递给网络层,由网络层从routing table路由表中查找下一站接收方。确定下一站接收方后,数据包向下进入数据链路层,对接收到的数据帧进行解封,将发送方的MAC地址替换为本路由器的MAC地址,将接收方的MAC地址改为下一站接收方的MAC地址,重新对数据包进行封装。封装完毕后,向下传递给物理层,进行介质传输。
    • 接收方从物理层收到比特流后,传输给数据链路层,根据帧的前后标志对数据进行识别和恢复。进而再一层层向上传递,直到抵达应用层,对方用户收到相关数据。


14.1.4 Show understanding of protocols (HTTP, FTP, POP3, IMAP, SMTP, BitTorrent) and their purposes 了解协议(HTTP、FTP、POP3、IMAP、SMTP、BitTorrent)及其用途

BitTorrent protocol provides peer-to-peer file sharing BitTorrent 协议提供点对点文件共享

  • HTTP:即HyperText Transfer Protocol超文本传输协议,属于应用层协议,是万维网的基础。通过各类链接访问网站,都会使用到该协议。
    • HTTP是transaction-oriented面向事务的、client-server客户端-服务器的协议,通过客户端发起request请求、服务器做出response回应来实现信息的传输。
    • Request请求中的首行为request line请求行,格式如下:

<Method> <URL> <Version>CRLF

      • <Method>是方法,一般采用GET语句。
      • <URL>是具体链接。
      • <Version>是版本,HTTP经过多年发展,存在多种版本,因此需要指定。
      • CR和LF是回车与换行符。
  • FTP:即File Transfer Protocol文件传输协议,属于应用层协议。FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信,可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等。
  • 发送邮件的常用协议:
    • 邮件数据传输方式:由终端将邮件数据发送给邮件服务器,然后该邮件服务器作为数据客户端,将数据发送给对方的邮件服务器(接收端),然后再由对方的邮件服务器传递给对方的终端。示意图如下:
CAIE-CS2nd-14.1.4-1.png
    • SMTP:即Simple Mail Transfer Protocol简单邮件传输协议,是push推送类的协议,是将数据向目标客户端传输时用到的协议。发送终端向邮件服务器发送数据、发送端邮件服务器向接收端邮件服务器发送数据,都使用SMTP协议。
    • POP3:即Post Office Protocol version 3邮局协议第3版,是pull拖拉类的协议,是目标客户端从邮件服务器上收到数据时用到的协议。接收端邮件服务器将数据传输给目标客户端,会使用POP3协议。
    • IMAP:即Internet Message Access Protocol因特网信息访问协议,是POP3的一项替代性协议,二者功能相近。
      • POP3和IMAP的区别在于:POP3是将邮件下载到本地终端上,安全性更强,但只能从一个客户端访问,且服务器数据变化时,本地不会及时更新;而IMAP不会下载邮件,邮件仍储存在服务器上,用户可以通过终端访问服务器来浏览邮件,适合从各种终端进行访问的用户
  • Peer-to-peer file sharing (P2P):点对点文件分享,指每个终端既充当客户端又充当服务器进行文件传输的架构。当一个终端承当服务器时,其被称作seed种子。P2P中最常见的协议是BitTorrent比特流。
    • BitTorrent:即比特流,是一种内容分发协议,允许快速分享文件。每个内容提供者需要提供一个content description内容描述文件,称为torrent文件,文件大小非常小,包含了tracker跟踪器(将终端引导到文件内容所在服务器)的名字和内容列表,便于传播。
      • 高速下载的运行方式:终端同时执行上传与下载,下载时自动寻找较少使用的chunk堆块,使得其活跃起来。
      • 解决free-riders搭便车者的方式:为防止有人只下载不上传,一开始终端会随机向所有终端发送数据,但很快会选择仅向有回应的终端发送数据,没有回应的终端将被逐渐抛弃。


14.2 Circuit switching, packet switching 电路交换、分组交换

  • 大纲要求

CAIE-CS2nd-14.2要求.png


14.2.1 Show understanding of circuit switching 展示对电路交换的理解

Benefits, drawbacks and where it is applicable 优点、缺点和适用的地方

  • Circuit switching:电路交换,指通过传统电话系统(如PTSN)进行数据传输的方法。
    • 运行方式:计算机的end-systems终端系统连接到具有switching function交换功能的local exchange本地交换机上,通过一系列的intermediate nodes中继节点传递到对方的终端上。发送方先确定接收方的状态,如果对方可以正常接收,则在网络上建立数据传输的链接,开始传输信息,传输完成后链接将被删除。传输示意图如下:
CAIE-CS2nd-14.2.1-1.png
    • 电路交换的优点:
      • 数据能够连续传输。
      • 中继节点不对数据做存储、修改、保存等操作,能够按照原有顺序传递。
      • 既可以传递模拟信号,又可以传递数字信号。
    • 电路交换的缺点:
      • 物理通路被通信双方独占,即使通信线路空闲,也不能供其他用户使用,信道利用率低。
      • 不同类型、速率等的终端很难建立通信。
      • 一旦电话挂断,则通信结束,链接将被删除。
      • 通信建立的时间较长,传输质量较差。
    • 电路交换的适用范围:适合传输信息量较大、通信对象比较确定的用户。


14.2.2 Show understanding of packet switching 展示对包交换的理解

Benefits, drawbacks and where it is applicable 优点、缺点和适用的地方
Show understanding of the function of a router in packet switching 了解路由器在分组交换中的作用
Explain how packet switching is used to pass messages across a network, including the internet 解释如何使用分组交换通过网络(包括互联网)传递消息

  • packet switching:分组交换,指通过数据打包的形式进行数据传输的方法。数据包中包含了传送指令和数据主体。传输示意图如下:
CAIE-CS2nd-14.2.2-1.png
  • 常见的分组交换包含connectionless service无连接服务和connection-oriented service面向连接服务。
    • connectionless service无连接服务的运行方式:在不清楚接收方是否准备好接收的情况下就发送数据包,且无法知道对方是否成功接收。
    • connection-oriented service面向连接服务的运行方式:先发送一个含有确认请求的数据包给接收方,如果收到来自接收方的确认,则继续发送其余的数据包。如果没有收到确认,则过一段时间后再重新发送之前的含有确认请求的数据包,直到收到对方确认。
    • 分组交换的优点:
      • 无需事先建立传输通道,可随时发送数据包。
      • 如果某条传输线路出现故障,可以改用其他传输线路,更加灵活可靠。
      • 并非一直占用同一条线路,而是分时段占用。线路没有使用时,其他传输也可使用该线路,提高线路利用率。
      • 每次发送的数据量减少,存储和转发操作可以并行,减少传输时间。
    • 分组交换的缺点:
      • 在中继节点需要进行存储、转发等操作,存在时滞。
      • 只适用于数字信号。
      • 数据传递可能出现失序现象(比如后发送的数据包却先收到了),接收方需要对数据包进行排序整理。
    • 分组交换的适用范围:适合接收端有多条线路连接的用户。
    • Router路由器可以在其中充当中继节点的作用,根据routing table提供的下一个中继节点的信息选择传输路径,直到传输到接收方。