计算机网络

type
status
date
slug
summary
tags
category
icon
password
SIP:互联网服务提供者 ISP (Internet Service Provider)

三大交换方式

notion image
 
三种方式比较:
  1. 若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。
  1. 报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。
  1. 由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

电路交换:

电路交换是一种传统的通信方式,它用于在电话网络等传统通信系统中建立和维护通信连接。这种通信方式与分组交换(packet switching)相对立,分组交换是现代互联网通信的基础。
特点
建立连接:建立一条专用的物理通路(占用通信资源)。 通话:主叫和被叫双方互相通电话(一直占用通信资源)。 释放连接:释放刚才使用的专用的物理通路(归还通信资源)。

分组交换:

分组交换定义
1.采用存储转发技术,在发送端,先把较长的报文划分成更小的等长数据段。
2.分组交换以“分组”作为数据传输单元
3.互联网采用分组交换技术。分组是在互联网中传送的数据单元
4.分组又称为“包”,而分组的首部也可称为“包头”
5.接收端收到分组后剥去首部,还原成原来的报文
 
分组交换转化步骤
1.根据首部中包含的目的地址、源地址等重要控制信息进行转发。 2.每一个分组在互联网中独立选择传输路径。 3.位于网络核心部分的路由器负责转发分组,即进行分组交换。 4.路由器要创建和动态维护转发表。
 
notion image
分组交换优点
notion image
 
分组交换带来的问题
notion image
 
 

报文交换:

报文交换(Message Switching)是一种早期的数据通信和数据交换方式,它用于在计算机网络中传输数据和信息。与现代的分组交换方式不同,报文交换是一种基于整个消息或报文的传输方式,而不是基于数据包或分组的传输方式。以下是关于报文交换的主要特点和工作原理:
  1. 整个消息传输
      • 报文交换是以整个消息或报文作为单位进行传输的。这意味着发送方将整个消息发送到网络中,而接收方会接收整个消息。这与分组交换方式不同,后者将数据分割成小的数据包并单独传输。
  1. 存储并转发
      • 在报文交换中,中间节点(例如报文交换机或节点)会存储整个报文,然后将其转发到下一个节点或接收方。
      • 这种存储并转发的方式允许报文在网络中传输,同时允许网络节点进行处理、存储和转发。
  1. 不需要直接连接
      • 报文交换允许不直接连接的设备通过网络交换信息。这意味着发送方不需要直接连接到接收方,而可以通过中间节点来传递消息。
  1. 适用于低速网络
      • 报文交换通常用于低速、不稳定或非常早期的计算机网络中,其中分组交换的复杂性和开销较高。
      • 由于整个消息被传输,因此报文交换可能需要较长的传输时间,尤其是对于大型消息。
  1. 不适用于现代网络
      • 报文交换在现代计算机网络中已经不常见,因为它不适用于高速、大规模和复杂的网络环境。
      • 现代网络通常使用分组交换方式,其中数据被分割成小的数据包,并根据网络状况动态路由和传输。
 
Sep 18, 2023
区别:
 

计算机网络分类

  1. 按照网络的作用范围进行分类;
    1. notion image
  1. 按照网络的使用者进行分类;
    1. notion image
  1. 用来把用户接入到互联网的网络。
    1. notion image
       

计网性能指标


notion image
 
速率:数据传送速率,数据率
带宽:最大数据率
吞吐量:单位时间内实际数据量
时延:数据交换整个过程的耗时,发送时延、传播时延、处理时延、排队时延
时延带宽积:带宽和传播时延的乘积
往返时间(RTT):发出数据完毕到收到确认开始的过程耗费的时间
利用率:信道利用率&网络利用率。D=Do/(1-U)
ps
  • D:网络在当前时延;
  • Do:网络空闲时的时延;
  • U:网络的利用率
 
易混淆:
高速链路(高带宽链路)增加的是数据发送速率 减少发送时延 并不是传输得更快
notion image

TCP/IP(一组网络通信协议)


TCP/IP(Transmission Control Protocol/Internet Protocol)是一组网络通信协议,用于在计算机网络上实现数据传输和通信。它是因特网的基础,也被广泛用于局域网(LAN)和广域网(WAN)。TCP/IP协议套件包括多个协议,每个协议都有不同的功能和责任,但共同协同工作以实现可靠的数据传输和互联网通信。
以下是TCP/IP协议套件中一些重要的协议和其主要功能:
  1. IP(Internet Protocol)
      • IP是TCP/IP协议套件的核心组成部分,它负责在网络上路由和传递数据包。
      • IP协议为每个设备分配唯一的IP地址,以便它们能够在全球互联网上互相识别和通信。
      • IPv4(Internet Protocol version 4)和IPv6(Internet Protocol version 6)是两个常见的IP协议版本,用于寻址和路由。
  1. TCP(Transmission Control Protocol)
      • TCP是面向连接的协议,它负责建立可靠的数据连接,并确保数据按顺序和可靠地传输。
      • TCP提供错误检测、流量控制、拥塞控制和数据分段等功能,以确保数据的可靠性。
  1. UDP(User Datagram Protocol)
      • UDP是无连接的协议,它提供了一种轻量级的数据传输方式,适用于实时性要求较高的应用程序。
      • UDP不提供数据的可靠性或顺序保证,但适用于快速数据传输,如音频和视频流。
  1. ICMP(Internet Control Message Protocol)
      • ICMP用于发送错误消息和网络状态信息,例如用于网络诊断和路由错误通知。
  1. HTTP(Hypertext Transfer Protocol)
      • HTTP是用于在Web上传输超文本文档(网页)的协议,它建立在TCP之上。
      • HTTP负责请求和响应Web页面,是Web浏览和应用程序通信的基础。
  1. FTP(File Transfer Protocol)
      • FTP用于在网络上传输文件,允许用户上传和下载文件。
  1. SMTP(Simple Mail Transfer Protocol)POP3/IMAP
      • SMTP用于发送电子邮件,而POP3和IMAP用于接收和访问电子邮件。
  1. DNS(Domain Name System)
      • DNS用于将人类可读的域名(例如www.example.com)映射到IP地址,以便实现域名解析。
 
TCP&UDP区别:
TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)是计算机网络中两种不同的传输层协议。以下是TCP和UDP之间的关键区别:
  1. 面向连接 vs. 无连接
      • TCP:TCP是面向连接的。它在数据传输开始之前建立两台设备之间的连接。这个连接建立过程包括三次握手,以确保数据传输的可靠性和有序性。
      • UDP:UDP是无连接的。它在发送数据之前不建立连接。每个UDP数据包都是独立发送的,没有传递或顺序保证。这使得UDP更快,但可靠性较低。
  1. 可靠性
      • TCP:TCP提供可靠的数据传输。它确保数据无误地传递,并按照发送顺序到达。它使用确认和重传机制来实现这种可靠性。
      • UDP:UDP不保证可靠性。UDP数据包可能会丢失、重复或无序到达。使用UDP的应用程序如果需要,必须自行实现错误检查和重传机制。
  1. 开销
      • TCP:由于连接建立、确认和错误检查机制,TCP引入了更多的开销。这可能使其比UDP稍慢。
      • UDP:UDP开销较低,因为它不具备可靠性和有序性的复杂机制。这使得UDP更快,但不适用于数据完整性至关重要的应用程序。
  1. 用例
      • TCP:TCP通常用于数据完整性、可靠性和有序性至关重要的应用程序,例如网页浏览、电子邮件、文件传输和远程桌面连接。
      • UDP:UDP更适用于速度和低延迟比可靠性更重要的应用程序,例如实时多媒体流传输、在线游戏和DNS(域名系统)查询。
  1. 头部大小
      • TCP:由于可靠性所需的附加控制信息,TCP头部较大,从而增加了每个数据包的大小。
      • UDP:UDP头部较小,导致与TCP相比较小的数据包大小。
 
有无连接区别:
在计算机网络中,有关连接的概念通常涉及到两种主要的传输方式:面向连接和无连接。
  1. 面向连接(Connection-Oriented)
      • 面向连接是一种通信方式,其中在数据传输之前需要建立一个明确的连接。
      • 这个连接的建立通常包括协商和交换控制信息,以确保通信的各个方面都在协议规定的条件下进行。
      • 面向连接的协议通常提供可靠性,即它们保证数据的传输是可靠的,不会丢失或损坏,并且数据会按照正确的顺序到达。
      • TCP(Transmission Control Protocol)是一个典型的面向连接的协议。在TCP通信中,建立连接是通过三次握手来完成的,然后数据可以传输,最后通过四次挥手来关闭连接。
  1. 无连接(Connectionless)
      • 无连接是一种通信方式,其中不需要在数据传输之前建立明确的连接。
      • 数据包在网络上独立传输,每个数据包都包含足够的信息以便独立路由和交付。
      • 无连接的协议通常更简单,速度更快,但不提供可靠性。数据包可能会丢失、重复或以不同的顺序到达。
      • UDP(User Datagram Protocol)是一个典型的无连接协议。UDP数据包可以独立发送,没有建立连接的过程,因此速度更快,但不提供TCP那种可靠性和顺序保证。
总之,面向连接和无连接是两种不同的数据传输方式,其主要区别在于是否需要在数据传输之前建立明确的连接以及是否提供可靠性和有序性保证。选择使用哪种方式取决于应用程序的需求,例如,如果需要可靠性和有序性,则通常选择面向连接的协议(如TCP),而如果需要速度和低延迟,则可以选择无连接的协议(如UDP)。
 
 

各层协议


五层体系结构是计算机网络体系结构的一种常见模型,将网络通信分为五个层次,每个层次具有特定的功能和任务。以下是五层体系结构的每一层以及一些常见的协议示例:
  1. 物理层(Physical Layer)
      • 物理层是最底层的层次,负责处理物理介质上的比特流传输。它关注的是如何在传输介质上表示0和1,以及如何将比特流转换为电压、光信号等。
      • 通常不涉及特定的协议,而是涉及物理媒体和传输技术,如以太网、无线信号传输等。
  1. 数据链路层(Data Link Layer)
      • 数据链路层负责将比特流组织成数据帧,处理物理层传输中的错误检测和纠正,以及进行点对点通信的控制。
      • 常见的协议包括以太网(Ethernet)、Wi-Fi、PPP(Point-to-Point Protocol)和HDLC(High-Level Data Link Control)等。
  1. 网络层(Network Layer)
      • 网络层负责路由数据包,决定数据包从源到目的地的路径。它关注的是网络拓扑、寻址和路由选择。
      • 常见的协议包括IP(Internet Protocol),其中包括IPv4和IPv6,以及路由协议如OSPF和BGP。
  1. 传输层(Transport Layer)
      • 传输层提供端到端的数据传输,负责数据的分段、流量控制和错误检测。它关注的是端到端通信的可靠性和效率。
      • 常见的协议包括TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)。
  1. 应用层(Application Layer)
      • 应用层是最高层,提供了各种应用程序和服务的接口,如电子邮件、文件传输、Web浏览等。它关注的是用户级别的应用和通信。
      • 常见的协议包括HTTP(HyperText Transfer Protocol)、SMTP(Simple Mail Transfer Protocol)、FTP(File Transfer Protocol)和DNS(Domain Name System)等。

各层设备代表


notion image

五层体系结构


notion image
  1. 应用层(Application Layer)
      • 应用层是网络体系结构的最高层,负责为用户提供各种应用程序和服务,如Web浏览、电子邮件、文件传输等。
      • 通常,应用层协议定义了数据交换的格式和规则,例如HTTP、SMTP、FTP等。
  1. 传输层(Transport Layer)
      • 传输层负责端到端的数据传输,它确保数据的可靠性和完整性。
      • 最常见的传输层协议包括TCP(传输控制协议)和UDP(用户数据报协议)。
  1. 网络层(Network Layer)
      • 网络层负责在不同网络之间进行数据路由和转发,以确定数据包的最佳路径。
      • 主要的网络层协议是IP协议(Internet Protocol),它为数据包分配逻辑地址,同时负责路由决策。
  1. 数据链路层(Data Link Layer)
      • 数据链路层负责直接相连设备之间的数据传输,它确保数据在物理介质上传输的可靠性。
      • 数据链路层通常包括两个子层:逻辑链路控制(Logical Link Control,LLC)和媒体访问控制(Media Access Control,MAC)。
  1. 物理层(Physical Layer)
      • 物理层负责定义硬件设备之间的物理连接和数据传输方式,如电压、电流、光信号等。
      • 通信介质(如电缆、光纤、无线信号)的特性和传输速率在物理层进行定义。
 

四层组合起来实现的主要功能


连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。
复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
分段和重装:发送端将要发送的数据块划分为更小的单位,在接收端将其还原。
流量控制:发送端的发送速率必须使接收端来得及接收,不要太快。
差错控制:使相应层次对等方的通信更加可靠。

数据传递过程


notion image
 
 
 

各层详解


物理层


基本概念:

物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。 作用:尽可能屏蔽掉不同传输媒体和通信手段的差异。 用于物理层的协议也常称为物理层规程 (procedure)。

物理层4 个特性:

  • 机械特性:指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等。
  • 电气特性:指明在接口电缆的各条线上出现的电压的范围。
  • 功能特性:指明某条线上出现的某一电平的电压的意义。
  • 过程特性:指明对于不同功能的各种可能事件的出现顺序。

复用

复用 (multiplexing) :允许用户使用一个共享信道进行通信。
复用=复用器+分用器
包括:
  • 时分复用
  • 频分复用
  • 统计时分复用
  • 波分复用
  • 码分复用
notion image
 
 

数据链路层


点对点通信&多点通信

notion image
 

链路&数据链路

链路 (link) :
  • 一条无源的点到点的物理线路段,中间没有任何其他的交换结点。
  • 一条链路只是一条通路的一个组成部分。
  • 或物理链路。
数据链路 (data link):
  • 把实现控制数据传输的协议的硬件和软件加到链路上,就构成了数据链路。
  • 或逻辑链路。
  • 典型实现:适配器(即网卡)
 
数据链路=链路+控制数据传输的协议
 
三个主要问题:
  • 封装成帧 — 帧界定
  • 透明传输 — 避免特殊字符冲突,字节填充
  • 差错检测 — CRC(循环冗余校验)、帧检验序列 FCS解决比特差错;加上帧编号、确认和重传等机制解决传输错误
 

PPP协议

PPP(Point-to-Point Protocol)是一种用于在两个计算机之间进行串行通信的数据链路协议。它最初是为在拨号连接和DSL等低带宽链接上进行数据通信而设计的,但也适用于其他类型的点对点连接。PPP是一种非常灵活的协议,支持多种物理介质和多种功能,包括:
  1. 点对点通信:PPP是一种点对点通信协议,它允许两台计算机之间建立直接的数据连接,而不需要多个中间节点或路由器。
  1. 握手和链路控制:PPP使用链路控制协议(LCP,Link Control Protocol)来建立和维护通信链路。握手过程用于协商通信参数,如最大传输单元(MTU)、认证方式等。
  1. 错误检测和纠正:PPP支持错误检测和纠正,以确保数据在传输过程中的完整性。它使用协议字段来检测错误,并可以使用协议来请求丢失或损坏的数据包的重新发送。
  1. 多种物理介质支持:PPP可以在不同类型的物理介质上运行,包括串口、DSL、ISDN、以太网等。这使得它非常适用于各种网络连接类型。
  1. 认证和加密:PPP支持多种认证方法,如PAP(Password Authentication Protocol)和CHAP(Challenge Handshake Authentication Protocol)。此外,它还可以与其他协议一起使用,如IPsec,以提供加密和安全性。
 

CSMA/CD 协议

  • 多点接入:说明这是总线型网络。许多计算机以多点接入的方式连接在一根总线上。
  • 载波监听:即“边发送边监听”。不管在想要发送数据之前,还是在发送数据之中,每个站都必须不停地检测信道。
  • 碰撞检测:适配器边发送数据,边检测信道上的信号电压的变化情况。电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞(或冲突)。
 

网络层


 
 
加入我们MYSQL