五、传输层

  1. 传输层的功能
  • 属于面向通信部分的最高层,也是用户功能的最底层
  • 为不同主机的进程之间提供端到端的逻辑通信
  • 复用是指发送方不同的应用进程可以使用同一个传输层协议传送数据
  • 分用是指接收方的传输层在剥去报文首部后可以将数据正确交付
  • 传输层要对收到报文的首部和数据部分都进行差错检测
  • 提供两种不同的传输协议,面向连接的TCP(相当于逻辑上全双工的可靠信道)和无连接的UDP(不可靠信道)
  1. 简述端口的作用
  • 应用层进程通过端口进行数据交付,所以认为端口是传输层的服务访问点
  • 硬件端口是不同硬件设备进行交互的接口,软件端口是协议进程和传输实体进行交互的地址
  • 端口号有216个,端口号只标识本地计算机应用层的各进程
  1. 简述端口号的分类

在这里插入图片描述
HTTP进程端口号:

  1. 服务器端为80
  2. 客户端由操作系统动态分配
应用程序 FTP TELNET SMTP DNS TFTP HTTP SNMP
熟知端口号 21 23 25 53 69 80 161
  1. TCP和UDP的区别

1.TCP

  • 面向连接的传输层协议
  • 提供全双工的单点对单点的可靠逻辑信道
  • 以字节为单位的滑动窗口接收机制
  • 进行流量控制和拥塞控制
  • 不提供广播和组播服务
  • 报文首部长度为20B
  • 常用于文件传输协议FTP、超文本传输协议HTTP、远程登陆TELNET

2.UDP

  • 无连接的非可靠传输层协议
  • UDP = IP数据报服务 + 复用和分用服务 + 差错检测
  • 首部仅8B,包括源端口号、目的端口号、长度和校验和,均为2B
  • 无拥塞控制,实时性好,执行速度快
  • IP数据报的校验和只检查首部,UDP的校验和首部和数据部分都检查
  • 常用于文件传送协议TFTP、DNS、SNMP、实时传输协议RTP
  1. TCP字段详解

1.同步位SYN,SYN=1表示这是一个连接请求报文或者连接接收报文
2.确认位ACK,ACK=1确认字段才有效,ACK=0确认字段无效
3.终止位FIN,FIN=1表示数据已经发送完毕,请求释放连接
4.序号字段seq,TCP传送字节流中的每个字节都顺序编号,seq表示本报文段数据的第一个字节的序号
5.确认号ack,期望收到对方下个报文段的第一个数据字节的序号

  1. TCP的三次握手连接
序号 控制信息 含义
1 SYN=1,seq=x 我想建立连接,行吗
2 SYN=1,ACK=1,seq=y,ack=x+1 行,我给你分配缓存空间了
3 ACK=1,seq=x+1,ack=y+1 好的,那我开始发数据了

在这里插入图片描述

  • TCP的连接端点是套接字
  • TCP中主动发起连接的应用进程是客户机,等待建立连接的应用进程是服务器
  • 服务器资源是在第二次握手时分配的,客户端资源是在第三次握手时分配的
  1. TCP的四次握手释放
序号 控制信息 含义
1 FIN=1,seq=u 我传完数据了,能关吗
2 ACK=1,seq=v,ack=u+1 等我给你传完,你再关
3 FIN=1,ACK=1,seq=w,ack=u+1 我传完了,你关吧
4 ACK=1,seq=u+1,ack=w+1 收到,我已经关了

在这里插入图片描述

  1. TCP在什么时候会进行报文段的重传?

TCP在两种情况下会进行报文的重传

  1. 超时,TCP发送的每个报文段都设置一次计时器,超时未收到确认就会进行重传
  2. 冗余ACK,TCP的发送方当收到对同一个报文的3个冗余ACK,就认为该报文丢失进行重传
  1. 简述TCP的拥塞控制

发送方需要维护的两个窗口

  1. 接收窗口rwnd:接收方告知的接收方窗口容量大小,本质是接收方的接收缓存大小
  2. 拥塞窗口cwnd:发送方自己估算网络拥塞程度而设置的窗口值

发送方窗口的大小 = min[rwnd,cwnd]

1.慢开始和拥塞避免算法

在这里插入图片描述
2.快重传和快恢复

  • 快重传:发送方连续收到三个重复的ACK报文时,直接重传对方尚未收到的报文,而不必等待那个报文段设置的重传计时3器超时
  • 快恢复:发生快重传时,把慢开始门限ssthresh,设置为出现拥塞时,发送方cwnd的一半,然后执行拥塞避免算法,线性自加
    在这里插入图片描述

六、应用层

  1. 简述网络应用模型

在这里插入图片描述

  1. 简述域名系统DNS

在这里插入图片描述

  • 域名和IP地址是多对多的关系,网卡和MAC地址是一一对应的关系
  1. 简述FTP

1.屏蔽不同计算机系统的细节,提供异构网络的任意计算机之间传送文件
2.FTP服务器在整个会话期间保留用户的状态信息
3.FTP采用C/S服务模式,使用TCP可靠的传输服务
4.FTP在工作时,使用两个并行的TCP连接

  • 一个是控制连接(端口号是21),在整个会话期间一直保持打开状态
  • 一个是数据连接(端口号是20),在数据传送完就会关闭
  • 两个端口号均是服务器默认的,而主机端口号是主机自己选定的

5.FTP提供匿名anonymous的文件共享服务

  1. 简述电子邮件

1.采用异步通信方式,不需要通信双方同时在场
2.组成

  • 用户代理UA:用户和电子邮件系统的接口
  • 邮件服务器:电子邮件系统的核心,负责收发邮件和报告差错情况,能够同时作为客户端和服务器端
  • 协议
    在这里插入图片描述

3.简单邮件传输协议SMTP和邮局协议POP3

  • 使用ASCII码传输,需要使用MIME转换成非ASCII
  • 均使用C/S方式,在传输层使用TCP连接
  • SMTP端口号为25,POP3端口号为110

4.多用途网际邮件扩充MIME:SMTP只能用于传送一定长度的ASCII文件,MIMB用于非ASCII文件和ASCII文件的转换

  1. 简述万维网WWW

1.万维网是一个资料空间 ,里面的资源通过统一资源定位符URL来标识,通过点击URL,资源会使用HTTP传送给使用者
2.万维网的内核部分

  • 超文本传输协议HTTP:面向事务的应用层协议,通过TCP提供可靠传输
  • 超文本标记语言HTML:一种文档结构的标记语言
  • 统一资源定位符URL:标识万维网的资源,一般格式为 <协议>://<主机>:<端口>/<路径>,其中
    常见的<协议>有http和ftp
    <主机>是存放资源的主机域名
    <端口>/<路径>可以省略

3.万维网以C/S方式进行工作

简述互联网、因特网和万维网有什么不同?
答:
1.互联网包含因特网,因特网包含万维网。即互联网>因特网>万维网
2.由通信设备组成的网络是互联网
3.因特网一定使用TCP/IP协议进行网络通信,并且拥有公网地址
4.使用HTTP协议进行服务和资源共享,就称为万维网
  1. 简述用户点击鼠标,在浏览器中访问网站发生的事件和各层用到的协议

1.浏览器分析链接指向的URL,http://sict.com
2.浏览器向DNS请求解析该域名的IP地址
3.域名系统DNS解析出该域名服务器的IP
4.浏览器与该服务器建立TCP链接(默认端口为80)
5.浏览器发出HTTP的GET请求
6.服务器响应HTTP把文件index.htm发送给浏览器
7.TCP链接释放
8.浏览器解释文件index.htm,并将Web页显示给用户

  • 应用层:HTTP:WWW访问协议,DNS:域名解析服务
  • 传输层:TCP:为HTTP提供可靠的数据传输,UDP:DNS使用UDP进行传输
  • 网络层:IP:IP数据报的传输和路由选择,ICMP:提供网络传输的差错检测,ARP:将本机的默认网关IP地址映射成MAC地址
    数据链路层:PPP协议
  1. 简述HTTP超文本传输协议

1.HTTP是无状态的,服务器不记录用户的访问信息,用户使用Cookie记录
2.HTTP使用TCP作为传输层协议,保证数据的可靠传输
3.HTTP本身是无连接的,使用TCP提供的连接服务
4.HTTP是面向文本的:

  • 请求报文:客户向服务器发送的请求报文
  • 响应报文:服务器发向客户的回答
    在这里插入图片描述

恭喜细心的你看到这里,你把上面知识点全部复习完并且认真把群的真题做完,21年我除了服务器和客户端的socket通信不会其余的都简单,祝你在考试中也有这种感觉

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐