0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

计算机网络知识点全面汇总(下)

jf_78858299 来源:程序员cxuan 作者:程序员cxuan 2023-05-18 15:52 次阅读

五、传输层

第一个端到端,即主机到主机的层次。传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。

传输层的任务是根据通信子网的特性,最佳的利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文。

网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口

有关网络层的重点:

  1. 传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题;
  2. 包含的主要协议:TCP协议(Transmission Control Protocol,传输控制协议)、UDP协议(User Datagram Protocol,用户数据报协议);
  3. 重要设备:网关。

!

5.1 UDP协议详解

UDP(User Datagram Protocol: 用户数据报协议),是一个非常简单的协议,

图片

UDP协议的特点:

  • UDP是无连接协议;
  • UDP不能保证可靠的交付数据;
  • UDP是面向报文传输的;
  • UDP没有拥塞控制;
  • UDP首部开销很小。

UDP数据报结构:

首部:8B,四字段/2B【源端口 | 目的端口 | UDP长度 | 校验和】数据字段:应用数据

图片

5.2 TCP协议详解

TCP(Transmission Control Protocol: 传输控制协议),是计算机网络中非常复杂的一个协议。

图片

TCP协议的功能:

  1. 对应用层报文进行分段和重组;
  2. 面向应用层实现复用与分解;
  3. 实现端到端的流量控制;
  4. 拥塞控制;
  5. 传输层寻址;
  6. 对收到的报文进行差错检测(首部和数据部分都检错);
  7. 实现进程间的端到端可靠数据传输控制。

TCP协议的特点:

  • TCP是面向连接的协议;
  • TCP是面向字节流的协议;
  • TCP的一个连接有两端,即点对点通信;
  • TCP提供可靠的传输服务;
  • TCP协议提供全双工通信(每条TCP连接只能一对一);

5.2.1 TCP报文段结构:

最大报文段长度:报文段中封装的应用层数据的最大长度。

TCP首部:

  • 序号字段:TCP的序号是对每个应用层数据的每个字节进行编号
  • 确认序号字段:期望从对方接收数据的字节序号,即该序号对应的字节尚未收到。用ack_seq标识;
  • TCP段的首部长度最短是20B ,最长为60字节。但是长度必须为4B的整数倍

TCP标记的作用:

5.3 可靠传输的基本原理

基本原理:

  • 不可靠传输信道在数据传输中可能发生的情况:比特差错、乱序、重传、丢失
  • 基于不可靠信道实现可靠数据传输采取的措施:

差错检测:利用编码实现数据包传输过程中的比特差错检测确认:接收方向发送方反馈接收状态重传:发送方重新发送接收方没有正确接收的数据序号:确保数据按序提交计时器:解决数据丢失问题;

停止等待协议:是最简单的可靠传输协议,但是该协议对信道的利用率不高。

连续ARQ(Automatic Repeat reQuest:自动重传请求)协议:滑动窗口+累计确认,大幅提高了信道的利用率。

5.3.1TCP协议的可靠传输

基于连续ARQ协议,在某些情况下,重传的效率并不高,会重复传输部分已经成功接收的字节。

5.3.2 TCP协议的流量控制

流量控制:让发送方发送速率不要太快,TCP协议使用滑动窗口实现流量控制。

图片

5.4 TCP协议的拥塞控制

拥塞控制与流量控制的区别:流量控制考虑点对点的通信量的控制,而拥塞控制考虑整个网络,是全局性的考虑。拥塞控制的方法:慢启动算法+拥塞避免算法。

慢开始和拥塞避免:

  1. 【慢开始】拥塞窗口从1指数增长;
  2. 到达阈值时进入【拥塞避免】,变成+1增长;
  3. 【超时】,阈值变为当前cwnd的一半(不能<2);
  4. 再从【慢开始】,拥塞窗口从1指数增长。

图片

快重传和快恢复:

  1. 发送方连续收到3个冗余ACK,执行【快重传】,不必等计时器超时;
  2. 执行【快恢复】,阈值变为当前cwnd的一半(不能<2),并从此新的ssthresh点进入【拥塞避免】。

图片

5.5 TCP连接的三次握手(重要)

TCP三次握手使用指令:

面试常客:为什么需要三次握手?

  1. 第一次握手:客户发送请求,此时服务器知道客户能发;
  2. 第二次握手:服务器发送确认,此时客户知道服务器能发能收;
  3. 第三次握手:客户发送确认,此时服务器知道客户能收。

建立连接(三次握手):

第一次:客户向服务器发送连接请求段,建立连接请求控制段(SYN=1),表示传输的报文段的第一个数据字节的序列号是x,此序列号代表整个报文段的序号(seq=x);客户端进入 SYN_SEND (同步发送状态);

第二次:服务器发回确认报文段,同意建立新连接的确认段(SYN=1),确认序号字段有效(ACK=1),服务器告诉客户端报文段序号是y(seq=y),表示服务器已经收到客户端序号为x的报文段,准备接受客户端序列号为x+1的报文段(ack_seq=x+1);服务器由LISTEN进入SYN_RCVD (同步收到状态);

第三次:客户对服务器的同一连接进行确认.确认序号字段有效(ACK=1),客户此次的报文段的序列号是x+1(seq=x+1),客户期望接受服务器序列号为y+1的报文段(ack_seq=y+1);当客户发送ack时,客户端进入ESTABLISHED 状态;当服务收到客户发送的ack后,也进入ESTABLISHED状态;第三次握手可携带数据;

5.6 TCP连接的四次挥手(重要)

释放连接(四次挥手)

第一次:客户向服务器发送释放连接报文段,发送端数据发送完毕,请求释放连接(FIN=1),传输的第一个数据字节的序号是x(seq=x);客户端状态由ESTABLISHED进入FIN_WAIT_1(终止等待1状态);

第二次:服务器向客户发送确认段,确认字号段有效(ACK=1),服务器传输的数据序号是y(seq=y),服务器期望接收客户数据序号为x+1(ack_seq=x+1);服务器状态由ESTABLISHED进入CLOSE_WAIT(关闭等待);客户端收到ACK段后,由FIN_WAIT_1进入FIN_WAIT_2;

第三次:服务器向客户发送释放连接报文段,请求释放连接(FIN=1),确认字号段有效(ACK=1),表示服务器期望接收客户数据序号为x+1(ack_seq=x+1);表示自己传输的第一个字节序号是y+1(seq=y+1);服务器状态由CLOSE_WAIT 进入 LAST_ACK (最后确认状态);

第四次:客户向服务器发送确认段,确认字号段有效(ACK=1),表示客户传输的数据序号是x+1(seq=x+1),表示客户期望接收服务器数据序号为y+1+1(ack_seq=y+1+1);客户端状态由FIN_WAIT_2进入TIME_WAIT,等待2MSL时间,进入CLOSED状态;服务器在收到最后一次ACK后,由LAST_ACK进入CLOSED;

图片

为什么需要等待2MSL?

  1. 最后一个报文没有确认;
  2. 确保发送方的ACK可以到达接收方;
  3. 2MSL时间内没有收到,则接收方会重发;
  4. 确保当前连接的所有报文都已经过期。

六、应用层

操作系统或网络应用程序提供访问网络服务的接口应用层重点:

  1. 数据传输基本单位为报文;
  2. 包含的主要协议:FTP(文件传送协议)、Telnet(远程登录协议)、DNS(域名解析协议)、SMTP(邮件传送协议),POP3协议(邮局协议),HTTP协议(Hyper Text Transfer Protocol)。

6.1 DNS详解

DNS(Domain Name System:域名系统)【C/S,UDP,端口53】:解决IP地址复杂难以记忆的问题,存储并完成自己所管辖范围内主机的 域名 到 IP 地址的映射。

域名解析的顺序:

  • 【1】浏览器缓存,
  • 【2】找本机的hosts文件,
  • 【3】路由缓存,
  • 【4】找DNS服务器(本地域名、顶级域名、根域名)->迭代解析、递归查询。
  1. IP—>DNS服务—>便于记忆的域名
  2. 域名由点、字母和数字组成,分为顶级域(com,cn,net,gov,org)、二级域(baidu,taobao,qq,alibaba)、三级域(www)(12-2-0852)

图片

6.2 DHCP协议详解

DHCP(Dynamic Configuration Protocol:动态主机设置协议):是一个局域网协议,是应用UDP协议的应用层协议。作用:为临时接入局域网的用户自动分配IP地址。

6.3 HTTP协议详解

文件传输协议(FTP):控制连接(端口21):传输控制信息(连接、传输请求),以7位ASCII码的格式。整个会话期间一直打开。

HTTP(HyperText Transfer Protocol:超文本传输协议)【TCP,端口80】:是可靠的数据传输协议,浏览器向服务器发收报文前,先建立TCP连接,HTTP使用TCP连接方式(HTTP自身无连接)。

HTTP请求报文方式:

  1. GET:请求指定的页面信息,并返回实体主体;
  2. POST:向指定资源提交数据进行处理请求;
  3. DELETE:请求服务器删除指定的页面;
  4. HEAD:请求读取URL标识的信息的首部,只返回报文头;
  5. OPETION:请求一些选项的信息;
  6. PUT:在指明的URL下存储一个文档。

图片

6.3.1 HTTP工作的结构

图片

6.3.2 HTTPS协议详解

HTTPS(Secure)是安全的HTTP协议,端口号443。基于HTTP协议,通过SSL或TLS提供加密处理数据、验证对方身份以及数据完整性保护。

原文链接 https://blog.csdn.net/Royalic/article/details/119985591

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • WAN
    WAN
    +关注

    关注

    1

    文章

    148

    浏览量

    18942
  • 城域网
    +关注

    关注

    0

    文章

    63

    浏览量

    17733
  • LAN
    LAN
    +关注

    关注

    0

    文章

    227

    浏览量

    37414
  • 计算机网络
    +关注

    关注

    3

    文章

    337

    浏览量

    22156
收藏 人收藏

    评论

    相关推荐

    计算机网络基础教程pdf

    计算机网络基础教程pdf第8章计算机网络基础8.1 计算机网络基础知识8.2 计算机局域网技术8.3 Windows 2000
    发表于 08-04 22:28

    谢希仁计算机网络课件

    谢希仁计算机网络课件计算机网络教程谢希仁(电子书)第 1 章   概述1.1  计算机网络在信息时代中的作用1.2 
    发表于 10-23 16:32

    计算机网络基础

    计算机网络基础——基础
    发表于 06-16 07:50

    【电子书】计算机网络(第5版)-谢希仁

    ``计算机网络第5版,全书共10章节,细致讲解计算机网络发展和原理体系结构、物理层、数据链路层、网络层、传输层、应用层、网络安全、因特网上的音视频服务,无线
    发表于 04-06 14:53

    计算机网络的定义和分类

    计算机网络技术本文来自于学习通中的资料,我只是负责整理(copy and paste),侵删文章目录计算机网络技术第一章-计算机网络引论1.1 计算机网络的定义和分类1.2
    发表于 07-21 06:27

    计算机网络概述

    技术小白要崛起——【计算机网络】学习【1】第一章:计算机网络概述基础概念计算机数据通信过程OSI参考模型TCP/IP协议和OSI参考模型计算机网络的性能举个栗子第一章:
    发表于 07-22 06:26

    计算机网络基础知识了解

    计算机网络技术复习一、 计算机网络基础知识了解:计算机网络(Internet)的发展 面向终端的计算机网络(单个
    发表于 07-26 06:27

    关于计算机网络技术的知识点你想知道都在这

    关于计算机网络技术的知识点你想知道都在这
    发表于 09-27 07:19

    计算机网络基础

    计算机网络基础8.1 计算机网络基础知识8.2 计算机局域网技术8.3 Windows 2000网络功能8.4 因特网(Internet)基
    发表于 08-04 22:25 0次下载

    计算机网络技术讲义

    第1章 计算机网络概论1.1 计算机网络的定义、演变和发展1.2 计算机网络的功能与应用第2章 计算机网络基础知识2.1 数据通信技术2.2
    发表于 05-15 10:12 27次下载

    计算机网络基础

    计算机网络概述数据通信基础知识计算机网络的硬件与软件组成局域网网络互联中国互联网络的发展
    发表于 05-15 10:15 26次下载

    计算机网络概论

    计算机网络概论:本章学习目标1.1  计算机网络的产生与发展1.2  计算机网络的定义和组成1.3  计算机网络的功能和应用1.4 
    发表于 06-27 21:39 0次下载

    计算机网络的功能和应用

    1.3  计算机网络的功能和应用1.3.1  计算机网络的功能1.3.2  计算机网络的应用1.3.1  计算机网络的功能1.通信功能2.资源共
    发表于 06-27 21:41 0次下载

    计算机网络2

    计算机网络的重点,考试时会考到。所以还是比较重要的知识点。值得看看(内容过于简单。下载者需谨慎)。
    发表于 06-01 10:39 0次下载

    计算机网络知识点全面汇总(上)

    计算机网络的分类 按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN); 按照网络使用者:公用网络、专用网络
    的头像 发表于 05-18 15:44 899次阅读
    <b class='flag-5'>计算机网络</b><b class='flag-5'>知识点</b><b class='flag-5'>全面</b><b class='flag-5'>汇总</b>(上)