我的2025嵌入式、通信:计算机网络篇刷题

4 篇文章 0 订阅
3 篇文章 0 订阅
https://pan.baidu.com/s/1HR3AvzQBbMQKvOUewgpwLw?pwd=9wvh 提取码: 9wvh 
 

计算机网络篇

性能指标:

速率,带宽,吞吐量,时延,时延带宽积,利用率。

2.3 码元,速率,波特

码元是指用一个固定时长的**信号波形**(数字脉冲),代表不同离散数值的基本波形,是数字通信中数字信号的计量单位,这个时长内的信号称为k进制码元,而该时长称为码元宽度。当码元的离散状态有M个时(M大于2),此时码元为M进制码元。

速率也叫数据率,是指数据的传输速率,表示单位时间内传输的数据量。可以用码元传输速率和信息传输速率表示。

- 码元传输速率:别名码元速率、波形速率、调制速率、符号速率等,它表示单位时间内数字通信系统所传输的码元个数(也可称为脉冲个数或信号变化的次数),单位是**波特(Baud)**。1波特表示数字通信系统每秒传输一个码元。

- 信息传输速率:别名信息速率、比特率等,**表示单位时间内数字通信系统传输的二进制码元个数**(即比特数),单位是比特/秒(b/s )

香农定理:在带宽受限且有噪声的信道中,为了不产生误差,信息的数据传输速率有上限值。

1. 信道的带宽或信道中的信噪比越大,则信息的极限传输速率就越高。2. 对一定的传输带宽和一定的信噪比,信息传输速率的上限就确定了。3. 只要信息的传输速率低于信道的极限传输速率,就一定能找到某种方法来实现无差错的传输。

> 数据链路层和传输层流量控制的区别数据链路层的流量控制是点对点的,而传输层的流量控制是端到端。

数据链路层流量控制手段:接收方收不下就不回复确认。传输层流量控制手段:接收端给发送端一个窗口公告。

4.频分多路复用 FDM

用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。优点:充分利用传输介质带宽,系统效率较高 ; 由于技术比较成熟,实现也比较容易。

5.时分多路复用TDM

将时间划分为一段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。

6.波分多路复用WDM

波分多路复用就是**光的频分多路复用**,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。

7.码分多路复用(CDMA)- 码分多址(CDMA)是码分复用的一种方式。- 1个比特分为多个码片/芯片(chip),**每一个站点被指定一个唯一的m位的芯片序列**。发送1时站点发送芯片序列,发送0时发送芯片序列反码(通常把0写成-1)。

2.以太网交换机以太网交换机就是多端口的网桥。现在基本上都在使用以太网交换机。分为两类。

计算机网络体系系

七层协议:应用层表示层会话层,运输层,网络层,数据链路层,物理层。

TCP/IP层:应用层,运输层,网际层,网络接口层

五层协议:应用层,运输层,网络层,数据链路层,物理层

道复用技术:

  • 频分复用(FDM,Frequency Division Multiplexing):不同用户在不同频带,所用用户在同样时间占用不同带宽资源
  • 时分复用(TDM,Time Division Multiplexing):不同用户在同一时间段的不同时间片,所有用户在不同时间占用同样的频带宽度
  • 波分复用(WDM,Wavelength Division Multiplexing):光的频分复用
  • 码分复用(CDM,Code Division Multiplexing):不同用户使用不同的码,可以在同样时间使用同样频带通信

点对点信道:三个问题:封装成帧,透明运输和差错检测

网络层

  • IP(Internet Protocol,网际协议)是为计算机网络相互连接进行通信而设计的协议。
IP 网际协议

IP 地址分类:IP 地址 ::= {<网络号>,<主机号>}

  • VPN(Virtual Private Network,虚拟专用网)

运输层

协议:

  • TCP(Transmission Control Protocol,传输控制协议)
  • UDP(User Datagram Protocol,用户数据报协议)
TCP
  • TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,其传输的单位是报文段。

TCP:状态控制码(Code,Control Flag),占 6 比特,含义如下:

  • URG:紧急比特(urgent),当 URG=1 时,表明紧急指针字段有效,代表该封包为紧急封包。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据), 且上图中的 Urgent Pointer 字段也会被启用。
  • ACK:确认比特(Acknowledge)。只有当 ACK=1 时确认号字段才有效,代表这个封包为确认封包。当 ACK=0 时,确认号无效。
  • PSH:(Push function)若为 1 时,代表要求对方立即传送缓冲区内的其他对应封包,而无需等缓冲满了才送。
  • RST:复位比特(Reset),当 RST=1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。
  • SYN:同步比特(Synchronous),SYN 置为 1,就表示这是一个连接请求或连接接受报文,通常带有 SYN 标志的封包表示『主动』要连接到对方的意思。
  • FIN:终止比特(Final),用来释放一个连接。当 FIN=1 时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。

DP(User Datagram Protocol,用户数据报协议)

  • 是 OSI(Open System Interconnection 开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,其传输的单位是用户数据报。
TCP 黏包问题
原因

TCP 是一个基于字节流的传输服务(UDP 基于报文的),“流” 意味着 TCP 所传输的数据是没有边界的。所以可能会出现两个数据包黏在一起的情况。

解决方法:发送定长包;包头加上包体长度;数据包之间设置边界;使用更加复杂的应用层协议。

TCP 传输连接管理

因为 TCP 三次握手建立连接、四次挥手释放连接很重要,所以附上《计算机网络(第 7 版)-谢希仁》书中对此章的详细描述:

全过程的解释:

1.客户端发送SYN给服务器,说明客户端请求端请求建立连接

2.服务端受到客户端发的SYN,并回复SYN+ACK给客户端(同意建立连接)

3.客户端受到服务器的SYN+ACK后,回复ACK给服务器(表示客户端收到了服务端发来的同意报文)

4.服务端受到客户端的ACK,连接已建立,可以传输数据。

TCP为什么要进行三次握手?

答案1:因为信道不可靠,而 TCP 想在不可靠信道上建立可靠地传输,那么三次通信是理论上的最小值。(而 UDP 则不需建立可靠传输,因此 UDP 不需要三次握手。)

答案2:因为双方都需要确认对方收到了自己发送的序列号,确认过程最少要进行三次通信

答案3:为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误。

TCP 释放连接全过程解释】

  1. 客户端发送 FIN 给服务器,说明客户端不必发送数据给服务器了(请求释放从客户端到服务器的连接);
  2. 服务器接收到客户端发的 FIN,并回复 ACK 给客户端(同意释放从客户端到服务器的连接);
  3. 客户端收到服务端回复的 ACK,此时从客户端到服务器的连接已释放(但服务端到客户端的连接还未释放,并且客户端还可以接收数据);
  4. 服务端继续发送之前没发完的数据给客户端;
  5. 服务端发送 FIN+ACK 给客户端,说明服务端发送完了数据(请求释放从服务端到客户端的连接,就算没收到客户端的回复,过段时间也会自动释放);
  6. 客户端收到服务端的 FIN+ACK,并回复 ACK 给服务端(同意释放从服务端到客户端的连接);
  7. 服务端收到客户端的 ACK 后,释放从服务端到客户端的连接。
FTP
  • FTP(File Transfer Protocol,文件传输协议)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式,使用 TCP 数据报,提供交互式访问,双向传输。
  • TFTP(Trivial File Transfer Protocol,简单文件传输协议)一个小且易实现的文件传输协议,也使用客户-服务器方式,使用UDP数据报,只支持文件传输而不支持交互,没有列目录,不能对用户进行身份鉴定。
WWW
  • WWW(World Wide Web,环球信息网,万维网)是一个由许多互相链接的超文本组成的系统,通过互联网访问
URL
  • URL(Uniform Resource Locator,统一资源定位符)是因特网上标准的资源的地址(Address)

网络编程

Socket 中 TCP 的三次握手建立连接:
  1. 客户端向服务器发送一个 SYN J
  2. 服务器向客户端响应一个 SYN K,并对 SYN J 进行确认 ACK J+1
  3. 客户端再想服务器发一个确认 ACK K+1

解释:

  1. 当客户端调用 connect 时,触发了连接请求,向服务器发送了 SYN J 包,这时 connect 进入阻塞状态;
  2. 服务器监听到连接请求,即收到 SYN J 包,调用 accept 函数接收请求向客户端发送 SYN K ,ACK J+1,这时 accept 进入阻塞状态;
  3. 客户端收到服务器的 SYN K ,ACK J+1 之后,这时 connect 返回,并对 SYN K 进行确认;
  4. 服务器收到 ACK K+1 时,accept 返回,至此三次握手完毕,连接建立。
Socket 中 TCP 的四次握手释放连接

  1. 某个应用进程首先调用 close 主动关闭连接,这时 TCP 发送一个 FIN M;
  2. 另一端接收到 FIN M 之后,执行被动关闭,对这个 FIN 进行确认。它的接收也作为文件结束符传递给应用进程,因为 FIN 的接收意味着应用进程在相应的连接上再也接收不到额外数据;
  3. 一段时间之后,接收到文件结束符的应用进程调用 close 关闭它的 socket。这导致它的 TCP 也发送一个 FIN N;
  4. 接收到这个 FIN 的源发送端 TCP 对它进行确认。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值